linux命令学习笔记-持续更新版


shell 获取前一条命令是否执行成功

if [ $? -eq 0 ];then 
 echo "success"
fi

shell 获取一条命令是否执行成功,失败则报错中止(与判断$?相比,写起来简便一些)

xxx || exit 1


git版本号(git本身没有数值版本号,可以根据提交次数来当做版本号)

echo $((`git rev-list --all|wc -l`))


使用tail命令的-f选项可以方便的查阅正在改变的日志文件

例如,查看tomcat实时日志

tail -f catalina.out

ubuntu 切换root用户

sudo su

ubuntu server挂载u盘

#列出磁盘设备
fdisk -l 
#找到u盘设备,比如/dev/sdb1,挂截它
mount /dev/sdb1 /mnt
#此时mnt目录就是u盘的目录

给一个脚本添加可执行权限

chmod +x ./xxx.sh

shell脚本的当前目录。在一个shell脚本中,执行另一个shell脚本,只写相对于当前shell脚本的“相对路径”是不够的。

应该先执行一下以下脚本,将当前目录切换到当前所执行的脚本下。

DIR="$( cd "$( dirname "$0" )" && pwd )"
cd $DIR

检测ip端口是否连通

telnet ip port
telnet 192.168.2.165 1112

git统计项目中某人的提交次数

git log --author="赵占涛" | grep "commit" | wc -l

将命令执行的输出信息,赋给变量

var=$(命令) #等号左右不能有空格

文件下载,将文件下载到当前路径

wget url

数组

array=( value1 value2 value3 ... )

列出当前目录下所有文件(递归,带路径)

find . -name "*"
或
find . -name "*.csd"

做加减法

a=1
echo $a #输出1
echo $a-1 #输出1-1
echo $[$a-1] #输出0

文件同步 rsync

rsync -avz --delete --exclude=languageRes --exclude=UpdatePlist $projPath/res/ ./tmpData/$toPath/res/


你可能感兴趣的:(shell)