Unix文件名区分大小写
echo $?:是查看上一个命令执行是否对。结果为0表示执行正确
1.Unix命令基础
shell变量的使用:shell没有数据类型这一说,定义变量的格式都是 变量名=变量值,变量值掐面不能加空格。变量值可以是数字,字符串,文件路径;无论何时,要用存储在变量中的值一定要在变量名前加一个美元符$,可以把整个变量名括在一对大括号里面。
Tips:
1)mv $filename ${filename}X:这样做是为了避免Shell将filenameX当做一个变量的全名,因为他完全是由合法的构成文件名的字符组成。
2)单引号对所有内容都有保护作用,双引号中如果包含类似$(ls |wc -l)这样的命令也可以执行,输出时会被替换成对应的结果显示。
1)ll跟ls的区别:
ls命令只是列出目录里的文件;ll列出文件或者目录后还会显示出文件的详细信息(文件的所有者,所有组等)。
2)cp:复制文件;pwd:显示出用户当前工作目录的全路径名;clear:清屏
3)Unix命令大全:http://www.doc88.com/p-897572535989.html
4)Unix shell里比较字符写法:
-eq "等于" -ne"不等于" -gt "大于" -lt"小于" -le:"小于等于";>>:输出追加重定向 >:输出重定向 -a:对两个操作符做与运算
-ge"大于等于" -z:空串 =:“两个字符相等” -n:"非空串"
cat file1.txt >file2.txt
意思是将 file1.txt的内容覆盖file2.txt文件,这时候两个文件内容是一样的,都是原file1.txt的内容
cat file1.txt >>file2.txt
意思是将 file1.txt的内容添加到file2.txt文件后面,这时候两个文件内容不同,但是file2.txt文件后面包含file1.txt的内容
5)-f:当file存在并且是正/规文件时返回真
#这里的-f参数判断$my.File是否存在
if [ ! -f "$myFile" ]; then
touch "$myFile"
fi
6)df: 显示目前所有档案系统的最大可用空间及使用情况;gzip;wc:计算行和其他信息 有wc -l,wc -L ;Unix文件attribute:r:read w:write,x:execute
7) 想把一个命令的输出赋给一个变量的时候应该用``或$()把命令括起来;变量名前后没有空格的时候还是用{}括起来保险一些
8) integer YEAR=`date +"%Y"` mkdir `date +%Y%m%d%H%M` 对于前面定义的integer类型的变量而言,%Y前面加了双引号,是因为单引号与双引号的最大不同在于双引号仍然可以保有变量的内容,但单引号内仅能是一般字符 ,而不会有特殊符号
9)正规表达式:
[....]:包含在方括号中的任何字符;(.)匹配任何单个字符 ;^匹配行首; $匹配行结束
10.date命令 各参数的含义 http://www.linuxidc.com/Linux/2013-02/78923.htm
%a: 显示星期简写 %A:显示完整星期
rm命令 :
rm -rf dirs可以删除不为空的文件夹 rm -rf dir1 dir2(一次性删除多个folder)
rm -f *.out 强制删除(-f删除文件时不作提示)
head命令: head -n folder :将文件的头n行显示输出,缺省值为10,显示多个文件时,在每个文件前面加==> 文件名 < ==
eg:head -10 file1
sftp命令:格式:sftp 用户名@IP/域名,回车提示输入密码 eg:sftp
[email protected]
chmod命令:chmod [-R] 模式 文件...
u:文件主 g:同组用户 o:其他用户 a:所以用户 +:增加后列权限 =:置成后列权限
chmod +x lllllllll +表示增加权限,-是取消权限,+是唯一设定权限,x可执行。
cat命令:
主要有三大功能:
1 一次显示整个文件 cat filename
2 从键盘创建一个文件(智能创建不能编辑) cat>filename
3 将几个文件合并为一个文件 cat file1 file2>file
CMP命令: cmp [-l] [-s] file1 file2
说明:比较两个文件,若file1为-,则使用标准输入,两个文件相同则无提示;不同则显示出第一个不同时的字符数和行号。
eg:cmp file1 file2 比较文件file1跟file2
cmp -l file1 file2 比较file1和file2的每处不同
wc命令 wc [-l/w/c] 统计文件的行,字,字符数,若无指定文件,则统计标准输入
-l:只统计行数 -w:只统计字数 -c:只统计字符数
wc -l file1 统计文件file1的行数
eg:wc -l xxx.out xxx.out.bak
stty命令:用于检查和修改当前注册的终端的通信参数。
stty -a命令:查看当前注册终端设置情况
split命令: split [-n] [ 文件 [名字]]
说明:split将指定大小文件分解为若干个小文件,每个文件长度为n行
(n 缺省时为1000)。第一个小文件名为指定的名字后跟aa,直至zz,名字缺省值为x,若未指定大文件名,则使用标准输入
eg: split -500 largefile little 讲文件largefile每行写入一个文件,第一个文件名为littleaaa
tar命令:将多个指定后缀的文件名合并为一个压缩文件
tar -cvzf压缩文件名.tar.gz file1.txt file2.txt file3.txt或者给出文件完整路径
find命令:find 文件路径 options [-print -exec -ok]
find命令有很多选项或者表达式,每一个选项前面都跟一个-
-name :按照文件名查找文件 -perm:按照文件权限来查找文件
-user:按照文件属主来查找文件 -group:按照文件所属组来查找文件
find命令有很多选项或者表达式,每一个选项前面跟随一个横杠-;~:代表是$HOME目录下。
eg: find ~name "*.txt" -print 是在home目录下查找所有txt文件;
find /home/zhangg/zhuxiaojuan "*.out" -print 在/home/zhangg/zhuxiaojuan目录喜查找所有的out稳文件
set命令:
cp命令:类似于windows的copy
cp file1 file2:复制源file1的内容到目标文件file2
cp -f
mv命令:用于重命名一个文件
mv file* dir:把文件移动到一个folder
mv file1 file2:把一个文件的名字从file1改为file2