1. 文件比较
-nt: file1 is newer than file2
-ot: file1 is older than file2
-d: test -d file1 file1 是文件夹返回 true
-f: test -f file1 file1 是普通文件返回 true
-s: test -s file1 file1 zise 大于 0 返回 true
-e: test -e file1 file1 存在返回 true
-r: test -r file1 file1 可读返回 true
-w: test -w file1 file1 可写返回 true
-x: test -x file1 file1 可执行返回 true
test file1 -nt file2; echo $?
[ -f file1 ]; echo $?
--------------------------------------------------------------------------------
2. 文件逐行读取
#!/bin/sh
l_num=1
filename=$1
if [ ! -f $filename ]; then
echo "error in $0: no such file, $filename"
fi
# cat $filename | while read line
while read line
do
echo "$l_num : $line"
l_num=`expr $l_num + 1`
# done
done < $filename
--------------------------------------------------------------------------------
3. 文件夹下文件(文件夹)名 (全路径或短路径)
#!/bin/sh
dir="/usr/local/*"
for file in ${dir}
do
echo ${file}
# filename=`basename $file`
# echo $filename
done
--------------------------------------------------------------------------------
4. 获取文件后缀
#! /bin/bash
file=$1
echo "filename: ${file%.*}"
echo "extension: ${file##*.}"
aaa => aaa aaa
aaa.sh => aaa sh
aaa.sh.a => aaa.sh a
--------------------------------------------------------------------------------
0 件のコメント:
コメントを投稿