Aas*_*Raj 5 awk shell-script text-processing
在脚本中重定向的输出:
$ ls -ltr |awk '{print $9}'
default.txt
dfah.txt
fruit.txt
fruit_prices.txt
dfh.txt
header.txt
testfile.txt
topoutput.txt
Run Code Online (Sandbox Code Playgroud)
在 shell 上编写的脚本:
while read line
do
var=`sed -e 's/\.txt/txt\.txt/' $line`
echo $var
done < `ls -ltr |awk '{print $9}'`
Run Code Online (Sandbox Code Playgroud)
出现错误:
-bash: `ls -ltr |awk '{print $9}'`: ambiguous redirect
Run Code Online (Sandbox Code Playgroud)
专家可以帮我看看上面的代码中如何发生不明确的重定向吗?
尝试
ls -ltr |awk '{print $9}' | while read line
do
var=`sed -e 's/\.txt/txt\.txt/' $line`
echo $var
done
Run Code Online (Sandbox Code Playgroud)
你发出了这样的命令
while read line ; do
...
done < a b c d
Run Code Online (Sandbox Code Playgroud)
无法解析的