shell文件存在的判断 shell数组
来源:互联网 发布:环球易购 知乎 编辑:程序博客网 时间:2024/04/30 21:28
判断文件:
WORKDIR=/home/tmp
LOCAL_LIST_FILE=$WORKDIR/local.list
#if no local.txt file, generate a new one
if [ ! -f "$LOCAL_LIST_FILE" ]; then
touch $LOCAL_LIST_FILE
fi
注意:一定要有空格,判断文件是否存在,如果不存在,就生成一个新的
if [ ! -d /mnt ] # be sure the directory /mnt exists
then
mkdir /mnt
fi
目录。/mnt是否存在,不存在就生成目录/mnt
The tests below are test conditions provided by the shell:
* -b file = True if the file exists and is block special file.
* -c file = True if the file exists and is character special file.
* -d file = True if the file exists and is a directory.
* -e file = True if the file exists.
* -f file = True if the file exists and is a regular file
* -g file = True if the file exists and the set-group-id bit is set.
* -k file = True if the files' "sticky" bit is set.
* -L file = True if the file exists and is a symbolic link.
* -p file = True if the file exists and is a named pipe.
* -r file = True if the file exists and is readable.
* -s file = True if the file exists and its size is greater than zero.
* -s file = True if the file exists and is a socket.
* -t fd = True if the file descriptor is opened on a terminal.
* -u file = True if the file exists and its set-user-id bit is set.
* -w file = True if the file exists and is writable.
* -x file = True if the file exists and is executable.
* -O file = True if the file exists and is owned by the effective user id.
* -G file = True if the file exists and is owned by the effective group id.
* file1 –nt file2 = True if file1 is newer, by modification date, than file2.
* file1 ot file2 = True if file1 is older than file2.
* file1 ef file2 = True if file1 and file2 have the same device and inode numbers.
* -z string = True if the length of the string is 0.
* -n string = True if the length of the string is non-zero.
* string1 = string2 = True if the strings are equal.
* string1 != string2 = True if the strings are not equal.
* !expr = True if the expr evaluates to false.
* expr1 –a expr2 = True if both expr1 and expr2 are true.
* expr1 –o expr2 = True is either expr1 or expr2 is true.
Shell中的数据问题
ArrayName=("element 1" "element 2" "element 3") #数组定义
echo ${#ArrayName[@]}
echo "The number of elements in the array is ${#ArrayName[*]}"
例子
#!/bin/bash
# define array
# name server names FQDN
NAMESERVERS=("ns1.nixcraft.net." "ns2.nixcraft.net." "ns3.nixcraft.net.")
# get length of an array
tLen=${#NAMESERVERS[@]}
# use for loop read all nameservers
for (( i=0; i<${tLen}; i++ ));
do
echo ${NAMESERVERS[$i]}
done
Sample output:
ns1.nixcraft.net.
ns2.nixcraft.net.
ns3.nixcraft.net.
- shell文件存在的判断 shell数组
- shell文件存在的判断
- Shell 判断文件是否存在的方法
- shell判断文件是否存在
- Shell--判断文件是否存在
- shell判断文件是否存在
- shell判断文件是否存在
- shell判断文件是否存在
- shell 判断文件是否存在
- shell 判断文件是否存在
- shell 判断文件是否存在
- shell判断文件是否存在
- Shell判断文件是否存在
- shell判断文件是否存在
- shell判断文件是否存在
- shell 判断文件是否存在
- shell判断文件是否存在
- shell判断文件是否存在
- lucene 漫谈(一)
- test blog
- 修改MyEclipes的发布路径
- 文本搜索引擎 和 视频搜索引擎 哪个好?
- Java Exception 处理之最佳实践
- shell文件存在的判断 shell数组
- Character decoding failed. Parameter skipped.
- 优化 GlassFish
- Lucene漫谈(二)
- 老调重弹:const char*, char const* and char *const
- 通过hibernate session.connection()获得数据库连接时,导致的查询缓慢甚至假死机问题
- 演练:打包智能设备解决方案以便进行部署
- 多线程有几种表示方法,都是什么?同步有几种实现方法,都是什么?
- 惠普前总裁孙振耀指点职业规划