Shell在编程时需要一些命令组成脚本。比如比较常见的几个命令
echo
printf
test
如我们看看test的用法,可用于两个数的比较,作为条件语句的布尔控制
num1=100
num2=100
if test $[num1] -eq $[num2]
then
echo '两个数相等!'
else
echo '两个数不相等!'
fi
保存为m.sh脚本 ./m.sh 输出结果:
Shell 传递参数实例!
执行的文件名:./m.sh
第一个参数为:
第二个参数为:
第三个参数为:
第一个元素为: A
第二个元素为: B
第三个元素为: C
第四个元素为: D
两个数相等!
echo命令用于输出,$符号用于变量取值 如脚本:
a=5
b=6
result=$[a+b] # 注意等号两边不能有空格
echo "result 为: $result"
输出结果:
Shell 传递参数实例!
执行的文件名:./m.sh
第一个参数为:
第二个参数为:
第三个参数为:
第一个元素为: A
第二个元素为: B
第三个元素为: C
第四个元素为: D
两个数相等!
result 为: 11
printf的用法:
示例:
$ echo "Hello, Shell"
Hello, Shell
$ printf "Hello, Shell\n"
Hello, Shell
$
linux常用命令:
关机:
shutdown-h now
立刻关机shutdown-h 3
3分钟后关机poweroff立刻关机
重启:
-
shutdown-r now
-
立刻重启shutdown-r 3
-
3分钟后重启reboot立刻重启
帮助命令:
--help命令shutdown --help:ifconfig --help:查看网卡信息
man命令(命令说明书) man shutdown注意:man shutdown打开命令说明书之后,使用按键q退出
目录切换:
cd / 切换到根目录cd /usr 切换到根目录下的usr目录cd ../ 切换到上一级目录 或者 cd ..cd ~ 切换到home目录cd - 切换到上次访问的目录
查看目录:
ls查看当前目录下的所有目录和文件ls-a 查看当前目录下的所有目录和文件(包括隐藏的文件)ls-l 或 ll 列表查看当前目录下的所有目录和文件(列表查看,显示更多信息)ls/dir 查看指定目录下的所有目录和文件 如:ls /usr
创建目录:
mkdir mhyr 在当前目录下创建一个名为qq的目录mkdir /usr/mhyr在指定目录下创建一个名为qq的目录
删除目录或文件:
rm文件 删除当前目录下的文件rm-f 文件 删除当前目录的的文件(不询问)
全部删除:
rm -rf * 将当前目录下的所有目录和文件全部删除rm -rf /* 将根目录下的所有文件全部删除(慎用!)
目录修改:
mv当前目录 新目录例:mv bb aa 将目录bb改为aa
剪切目录:
命令:mv 目录名称 目录的新位置例:将/usr/lib目录下的qq目录剪切到/usr目录下面 mv /usr/lib/qq /usr
拷贝目录:
命令:cp -r 目录名称 目录拷贝的目标位置 -r代表递归例:将/usr/lib目录下的qq目录复制到 /usr目录下面 cp /usr/lib/qq /usr
搜索目录:
命令:find 目录 参数 文件名称例:查找/usr/lib目录下的所有以a开头的目录或文件find /usr/lib -name 'a*'
新建文件:
命令:touch 文件名例:在当前文件目录创建一个名为ai.exe文件 touchai.exe
删除文件:
命令:rm-rf 文件名例:删除ai.exe文件 rm-rfai.exe
修改文件:
命令:vi 文件名例:打开房钱目录下的qq.exe文件vi qq.exe或者 vim qq.exe
查看文件:
cat:看最后一屏例:使用cat查看/etc/sudo.conf文件,只能显示最后一屏内容catsudo.conf
more:百分比显示例:使用more查看/etc/sudo.conf文件,可以显示百分比,回车可以向下一行,空格可以向下一页,q可以退出查看more sudo.conf
less:翻页查看例:使用less查看/etc/sudo.conf文件,可以使用键盘上的PgUp和PgDn向上和向下翻页,q结束查看less sudo.conf
tail:指定行数或者动态查看例:使用tail-10 查看/etc/sudo.conf文件的后10行,Ctrl+C结束 tail-10 sudo.conf
打包或压缩文件:
Linux中的打包文件是:qq.tar
Linux中的压缩文件是:qq.gz
Linux中打包并压缩的文件是:.tar.gz
命令:tar -zcvf 打包压缩后的文件名 要打包的文件
z:调用gzip压缩命令进行压缩c:打包文件v:显示运行过程f:指定文件名
解压文件:
命令:tar[-zxvf] 压缩文件x代表解压
查找命令:
ps -ef | grep sshd 查找指定ssh服务进程 ps -ef | grep sshd | grep -v grep 查找指定服务进程,排除gerp身 ps -ef | grep sshd -c 查找指定进程个数
find . -name "*.conf" -ls 在当前目录查找以.conf结尾的文件,并显示详细信息。find /root/ -perm 500 查找/root/目录下权限为500的文件 find . -type f -name "*.txt" 查找当目录,以.txt结尾的普通文件 find . -type d | sort 查找当前所有目录并排序 find . -size +50M 查找当前目录大于50M的文件
查看当前目录:pwd
查看进程:ps -ef
结束进程:kill
ifconfig:查看网卡信息
ping:查看与某台机器的连接情况
netstat -an:查看当前系统端口
重启网络:
命令:service network restart