我有一个文本文件,格式如下.第一行是"KEY",第二行是"VALUE".
KEY 4048:1736 string
3
KEY 0:1772 string
1
KEY 4192:1349 string
1
KEY 7329:2407 string
2
KEY 0:1774 string
1
Run Code Online (Sandbox Code Playgroud)
我需要与键相同的行中的值.所以输出应该是这样的......
KEY 4048:1736 string 3
KEY 0:1772 string 1
KEY 4192:1349 string 1
KEY 7329:2407 string 2
KEY 0:1774 string 1
Run Code Online (Sandbox Code Playgroud)
如果我可以像$或使用一些分隔符会更好,:
KEY 4048:1736 string , 3
Run Code Online (Sandbox Code Playgroud)
如何将两行合并为一行?
我正在尝试用我的相机在文件名的bash中构造一个数组:
FILES=(2011-09-04 21.43.02.jpg
2011-09-05 10.23.14.jpg
2011-09-09 12.31.16.jpg
2011-09-11 08.43.12.jpg)
Run Code Online (Sandbox Code Playgroud)
如您所见,每个文件名中间都有一个空格.
我已经尝试用引号括起每个名字,然后用反斜杠转义空格,两者都不起作用.
当我尝试访问数组元素时,它继续将空格视为elementdelimiter.
如何正确捕获名称中包含空格的文件名?
我有一个脚本文件,我需要用另一个脚本修改,以在第8行插入文本.
要插入的字符串:Project_Name=sowstest,到一个名为的文件中start.
我试图使用awk和sed,但我的命令变得乱码.
我想从文件末尾删除一些n行.这可以用sed完成吗?
例如,要删除2到4行,我可以使用
$ sed '2,4d' file
Run Code Online (Sandbox Code Playgroud)
但我不知道行号.我可以删除最后一行使用
$sed $d file
Run Code Online (Sandbox Code Playgroud)
但我想知道从最后删除n行的方法.请告诉我如何使用sed或其他方法来做到这一点.
例如.
me$ FOO="BAR * BAR"
me$ echo $FOO
BAR file1 file2 file3 file4 BAR
Run Code Online (Sandbox Code Playgroud)
并使用"\"转义字符:
me$ FOO="BAR \* BAR"
me$ echo $FOO
BAR \* BAR
Run Code Online (Sandbox Code Playgroud)
我显然做了一些愚蠢的事.
如何获得输出"BAR*BAR"?
以下代码有什么问题?
name='$filename | cut -f1 -d'.''
Run Code Online (Sandbox Code Playgroud)
因为,我得到文字字符串$filename | cut -f1 -d'.',但如果我删除引号,我什么都没得到.同时打字
"test.exe" | cut -f1 -d'.'
Run Code Online (Sandbox Code Playgroud)
在shell中给我输出我想要的输出test.我已经知道$filename已经分配了正确的价值.我想要做的是为变量分配没有扩展名的文件名.
我有一个包含多个模式的postgres数据库.当我从shell连接到数据库时psql,我运行\dt它使用默认的公共连接模式.是否有我可以指定的标志或如何更改架构?
该==运算符用于比较的shell脚本两个字符串.但是,我想比较两个忽略大小写的字符串,怎么做呢?这有什么标准命令吗?
我有一个具有一些功能的脚本.
我可以直接从命令行运行其中一个功能吗?
像这样的东西?
myScript.sh func()
Run Code Online (Sandbox Code Playgroud) 我有一个bash脚本,它使用该read命令以交互方式读取命令的参数,例如是/否选项.有没有办法在非交互式脚本中调用此脚本将默认选项值作为参数传递?
这不仅仅是我必须传递给交互式脚本的一个选项.