我想在另一个目录中复制特定目录中的多个文件.为了澄清我想立即执行以下操作(一个命令):
cp ../dir5/dir4/dir3/dir2/file1 .
cp ../dir5/dir4/dir3/dir2/file2 .
cp ../dir5/dir4/dir3/dir2/file3 .
cp ../dir5/dir4/dir3/dir2/file4 .
Run Code Online (Sandbox Code Playgroud)
我无法使用, cp ../dir5/dir4/dir3/dir2/* .
因为dir2
有n
文件(n>4)
顺便说一下,我正在使用bash
.
谢谢.
我在一台新机器上工作,我找不到 MKL 库的路径。有没有办法知道它们是否安装以及安装在哪里?我试过了find -name
,但我什么也找不到。也许他们根本没有安装。但是如何确定呢?
我正在调用一个脚本如下
目录路径:/user/local/script/print_path.sh
var_path=`pwd`
echo $var_path
Run Code Online (Sandbox Code Playgroud)
上面的脚本调用如下目录路径:/user/local/callPscript/call.sh
`/user/local/script/print_path.sh`
Run Code Online (Sandbox Code Playgroud)
我想要的输出如下:
/user/local/script/
Run Code Online (Sandbox Code Playgroud)
但它给出了输出:
/user/local/callPscript/
Run Code Online (Sandbox Code Playgroud)
即调用脚本的位置。如何使其进入脚本主目录路径?
我应该使用哪个命令来汇总两个特定列的值?例如,我有文件:
1 4 5 1
2 3 5 2
7 8 6 3
Run Code Online (Sandbox Code Playgroud)
我想总结第二列和最后一列,以得到以下结果
1 4 5 1 5
2 3 5 2 5
7 8 6 3 11
Run Code Online (Sandbox Code Playgroud)
我用awk和bc吗?我找到了很多例子来总结整个专栏......
如何在 file.txt 中添加第三行:
line 1
line 2
line 4
Run Code Online (Sandbox Code Playgroud)
sed 可以做,sed '3iline 3' file.txt
但我想输出到同一个文件。我尝试过sed '3iline 3' file.txt >> file.txt
哪个不起作用。它确实添加了该行,但它重复了 file.txt,我得到了这个:
line 1
line 2
line 4
line 1
line 2
line 3
line 4
Run Code Online (Sandbox Code Playgroud) 我有一个文件,其中我用大写写了很多时间相同的单词.我想从大写到小写一次修改所有单词,除了那些跟在点后面的单词.那可能吗?我已经在这里和那里找到了一些提示,但是在所有这些提示中都需要将光标放在单词的乞讨处.
我有一些.h文件用于FORTRAN 77中的某些模块(我自己没有写过).我想在Fortran 90中编写一个新例程并使用这些.h文件.我尝试使用include 'foo.h'
,当我尝试编译时(使用ifort版本13.0.0.079 Build 20120731)我收到以下错误:
Syntax error, found IDENTIFIER 'FOO' when expecting one of: ( % [ : . = =>
C FOO COMMOM
我也试过使用include foo.h
,是什么给了我以下错误:
error #5082: Syntax error, found IDENTIFIER 'FOO' when expecting one of: <CHAR_CON_KIND_PARAM> <CHAR_NAM_KIND_PARAM> <CHARACTER_CONSTANT>
INCLUDE FOO.h
----------^
error #6274: This statement must not appear in the specification part of a module
INCLUDE foo.h
--^
error #6236: A specification statement cannot appear in the executable section.
!$ use omp_lib
---^ …
我有一个包含两列的文件,并且仅当在第二列中找不到确定的模式时才想打印第一列,该文件可以是例如:
3 0.
5 0.
4 1.
3 1.
10 0.
Run Code Online (Sandbox Code Playgroud)
并且我想仅在第二个文件中没有数字 1. 时才打印第一列中的值,即
3
5
10
Run Code Online (Sandbox Code Playgroud)
我知道要打印我可以使用的第一列
awk '{print $1}' fileInput >> fileOutput
Run Code Online (Sandbox Code Playgroud)
是否有可能在某个地方有一个 if 块?
我想使用命令linux粘贴两个文件paste
(以及任何其他选项也将受欢迎)但增加第二行的行.更好地举个例子:
文件1
a
b
c
d
e
f
Run Code Online (Sandbox Code Playgroud)
文件2
1
2
3
4
5
6
7
8
9
10
11
12
Run Code Online (Sandbox Code Playgroud)
我想创建file3为:
a 1
b 3
c 5
d 7
e 9
f 11
Run Code Online (Sandbox Code Playgroud) 在循环内部,我有一个变量用于计算,使用bc
另一个变量.但是,我得到的结果是完全错误的.我有32个文件,名称test0
,test1
等等.我的脚本如下:
for i in {0..31}; do
declare x$i=$(wc -l < test$i)
declare y$i=$(echo $x$i/10 | bc)
done
Run Code Online (Sandbox Code Playgroud)
对于变量x
,我得到了好的结果,即每个都x$i
存储了对应的行数test$i
.然后我想简单地知道每个10%的多少x$i
并将其存储在变量中y$i
.而且,正如我上面所说,使用该脚本我得到了完全错误的结果.例如,对于x0
= 155287510,我得到了y0
= 20.