我想修改一个文件来替换密钥,假设这些密钥在文件中如下:
42NM
52NM
23NO
XNNM
我想用 NM 代替任何东西,用“好的”这个词。
1 #!bin/bash/
2
3 if [ -f KeyFile]
4 then
5 sed 's/[0-9][0-9]NM/Okay/g' KeyFile
6 else
7 echo "File does not exist or cannot be found."
8 fi
9
10 exit 0
我运行了命令:
chmod a+x FindKeys
然后,当我尝试运行该脚本时,我得到:
-bash-3.00$ ./FindKeys
-bash: ./FindKeys: bin/bash/: bad interpreter: No such file or directory
我似乎有两个问题,一是脚本文件运行不正确,二是命令sed
不起作用。
答案1
1号线:您的 hashbang 行不正确,请使用:
#!/bin/bash
3号线:注意test
实用程序(它在结束之前需要一个空格]
):
if [ -f KeyFile ]
5号线:在sed
命令中,使用-i
激活 的就地编辑sed
,否则编辑内容仅打印到标准输出:
sed -i 's/[0-9][0-9]NM/Okay/g' KeyFile