问题:我必须在给定路径上显示文本文件的属性,例如大小,权限,自己,组或所有使用。(使用if else菜单)
我不确定如何使用ls命令仅显示选择性属性,ls -l给出了我不需要的所有内容,然后ls -sh1只给出了大小....有没有办法使用ls -l并只显示它的某些部分?
我的代码:
#!/bin/bash
echo " enter address in form : /home/rohan/../.."
read ARG
if [ -n "$ARG" ]; then
echo "entered path :$ARG"
echo " files present are"
ls -sh1 $ARG"/"*.txt
else
ARG=$(pwd)
echo "Path is :$ARG"
echo " files present are"
ls -sh1 $ARG"/"*.txt
fi
输出:仅包含大小的文本文件列表。
所以限制ls -l命令的方法是什么?
答案 0 :(得分:1)
答案 1 :(得分:0)
更好的方法是使用'find'命令。
find . -maxdepth 1 -printf '%b\n'
您可以在此处详细了解格式:
http://linux.about.com/od/commands/l/blcmdl1_find.htm
以
开头的部分-printf format True;标准输出上的打印格式,解释
\' escapes and
%'指令。场宽和精度可以是 使用`printf'C函数指定。与-print不同,-printf可以 不要在字符串的末尾添加换行符。逃脱和指令 是:\ a警钟。