我的linux命令手册

来源:互联网 发布:哈尔滨旅游 知乎 编辑:程序博客网 时间:2024/06/04 20:00

Shell脚本编写

写shell脚本 :vi test1.sh
echo "Hi, Linux"
read PERSON
echo "$PERSON, how to c00k a sanwich ? "
保存退出


运行脚本的方式
第一种 ./test1.sh (.表示当前目录)
第二种 sh test1.sh

此时文件运行失败,默认创建的文件权限是 -rw-r--r--
给文件添加权限 chmod +X ./test1.sh

变量声明(赋值)
varableName=value(等号两边不能有空格,否则赋值失败)

引用变量

echo "the value is ${varableName}"

sh命令传参
sh xxx.sh one two

文件内接收参数, $1 表示第一个参数, $2表示第二个, 以此类推

num1="$1"

num2="$2"

echo "The input parameters are ${num1}, ${num2}"
---------------------------------------------------------------------------------
linux中shell变量$#,$@,$0,$1,$2的含义解释: 
变量说明: 
$$ 
Shell本身的PID(ProcessID) 
$! 
Shell最后运行的后台Process的PID 
$? 
最后运行的命令的结束代码(返回值) 
$- 
使用Set命令设定的Flag一览 
$* 
所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。 
$@ 
所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。 
$# 
添加到Shell的参数个数 
$0 
Shell本身的文件名 
$1~$n 
添加到Shell的各参数值。$1是第1参数、$2是第2参数…。 

-------------------------------------------------------------------------------------

*** 必杀获取到的进程
ps -ef|grep "/home/appName/tomcat" | grep -v grep | awk '{print $2}' | sed -e "s/^/kill -9 /g" | sh -
grep -v grep 移除grep命令占用的进程;
$1 打印用户;
$2 打印进程id;
sed -e "s/^/kill -9 /g" | sh - 杀死获取到的进程;

---------------------------------------------------------------------------------------------------

删除文件(夹)

rm -rf filename
重命名文件或目录
mv A B 将目录A重命名B
mv /a /b/c 将a移动到b下,并重命名为c


------------------curl-----------------
1. 在linux平台下curl post json 数据
curl -H "Content-Type: application/json" -X POST  --data '{"data":"1"}'  http://127.0.0.1/


1. 解压.gz文件的命令
gunzip filename.gz
gzip -d filename.gz


2. 获取主机的数字签名(https是443, http是80)
openssl s_client -connect www.baidu.com:443

3. 查看gz压缩文件中的关键字
zcat -c xxxx.log.gz| grep -a '72977'
Tips : grep后不加参数 -a 会报错: Binary file (standard input) matches

如需慢慢展开gz文件,使用名zmore

4. less +/pattern file 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
示例: less +/'16:00:00' /home/logs/app.log
原创粉丝点击