shell命令记录

1、ulimit 查看资源大小限制(如core、stack、pipe等)

     ulimit  -a

2、sysctl  内核运行时参数配置

   如修改core文件生成路径名称:       sysctl -w kernel.core_pattern=/corefile/core-%e-%p-%t 
  将core文件统一生成到/corefile目录下,产生的文件名为core-命令名-pid-时间戳
  以下是参数列表:
  %p - insert pid into filename 添加pid(进程id)
  %u - insert current uid into filename 添加当前uid(用户id)
  %g - insert current gid into filename 添加当前gid(用户组id)
  %s - insert signal that caused the coredump into the filename 添加导致产生core的信号
  %t - insert UNIX time that the coredump occurred into filename 添加core文件生成时的unix时间
  %h - insert hostname where the coredump happened into filename 添加主机名
  %e - insert coredumping executable name into filename 添加导致产生core的命令名 

3、hexdump    查看16进制

    -c 每单元以字节为单位,显示出对应的ASCII码
    -C 每单元以字节为单位,同时显示十六机制和ASCII码

    其它查看16进制方式见https://blog.csdn.net/chenglian_999/article/details/4672177

4、sed 

  https://www.cnblogs.com/ctaixw/p/5860221.html

5、awk 

  https://www.cnblogs.com/losbyday/p/5854707.html

  https://www.cnblogs.com/chongchong88/p/6085905.html

例:对于awk '!a[$3]++',需要了解3个知识点
1、awk数组知识,不说了
2、awk的基本命令格式 awk 'pattern{action}'
    省略action时,默认action是{print},如awk '1'就是awk '1{print}'
3、var++的形式:先读取var变量值,再对var值+1
以数据
1 2 3
1 2 3
1 2 4
1 2 5
为例,对于awk '!a[$3]++'
awk处理第一行时: 先读取a[$3]值再自增,a[$3]即a[3]值为空(0),即为awk '!0',即为awk '1',即为awk '1{print}'
awk处理第二行时: 先读取a[$3]值再自增,a[$3]即a[3]值为1,即为awk '!1',即为awk '0',即为awk '0{print}'
最后实现的效果就是对于$3是第一次出现的行进行打印,也就是去除$3重复的行

6、xargs与管道
管道是实现“将前面的标准输出作为后面的标准输入”;xargs是实现“将标准输入作为命令的参数”
你可以试试运行:
echo "--help"|cat   ,   echo "--help"|xargs cat

看看结果的不同。可以看到 echo '--help' | cat   该命令输出的是echo的内容,也就是说将echo的内容当作cat处理的文件内容了,实际上就是echo命令的输出通过管道定向到cat的输入了。然后cat从其标准输入中读取待处理的文本内容。这等价于在test.txt文件中有一行字符 '--help' 然后运行  cat test.txt 的效果。而 echo '--help' | xargs cat 等价于 cat --help 什么意思呢,就是xargs将其接受的字符串 --help 做成cat的一个命令参数来运行cat命令,同样  echo 'test.c test.cpp' | xargs cat 等价于 cat test.c test.cpp 此时会将test.c和test.cpp的内容都显示出来。

7 source和点命令 、bash和sh

8、ipcs  消息队列

9、tcpdump   抓包

10、crontab 与cron   监控

11、查看硬件配置:

      cpu信息 lscpu 、cat  /proc/cpuinfo   

      内存信息 free  、cat /proc/meminfo

      硬盘信息 df、  lsblk (即block 块  , sdX 指sata scsi 硬盘 u盘 , hdX 是IDE接口的硬盘 ) 

      操作系统信息 uname -a               

      网络接口:ifconfig

      网络监听 netstat             

      路由 route -n

 

12. 文件路径 :dirname basename readlink

dirname 获取当前地址的上级目录

basename 获取当前地址的最后一级子文件(夹)名

readlink -f  获取当前链接绝对路径

 

13、nohup与&、screen

screen -S yourname -> 新建一个叫yourname的session
screen -ls -> 列出当前所有的session
screen -r yourname -> 回到yourname这个session
screen -d yourname -> 远程detach某个session
screen -d -r yourname -> 结束当前session并回到yourname这个session
Ctrl-a d -> detach,暂时离开当前session,将目前的 screen session  丢到后台执行,并会回到还没进 screen 时的状态。
 

 

14、 gdb

 next 下一步,跳过函数

 step单步执行

continue

 

reverse-(next、step\continue):反向调试

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值