在.sh bash脚本文件中使用awk

时间:2016-08-26 15:36:55

标签: linux bash shell awk ls

尝试在linux bash中实现某些功能,但失败了:(

我有这个ls命令用于在目录中获得一个很好的cvs文件输出。我还使用awk命令来删除我不需要的权限信息

ls -lrth *.csv | awk '{print $5, $6, $7, $8, $9}'

但是现在我希望在.sh脚本文件中运行它。 在脚本中,如果我写这样的东西,它可以工作

LIST=$(ls -lrth *.csv)
echo $LIST

但是如果我添加awk它就不会因为参数而引起关注。

LIST=$(ls -lrth *.csv | awk '{print $5, $6, $7, $8, $9}')
echo $LIST

如何正确编写内部可执行文件?

1 个答案:

答案 0 :(得分:0)

如果您想在bash脚本中运行,可以删除echo:

#! /bin/bash
# list_csv.sh
ls -lrth *.csv | awk '{print $5, $6, $7, $8, $9}'

但是,我建议您使用别名,因为您只是尝试用一个替换两个命令。您可以将它放在.bash_aliases文件中以在会话之间保留,或者从控制台运行它以将其用于一个会话:

 alias lscsv="ls -lrth *.csv | awk '{print \$5, \$6, \$7, \$8, \$9}'"