1.检查远程端口是否对bash开放:

  1. echo >/dev/tcp/8.8.8.8/53 && echo "open"

2.让进程转入后台:

  1. Ctrl + z

3、将进程转到前台:

  1. fg

4.产生随机的十六进制数,其中n是字符数:

  1. openssl rand -hex n

5.在当前shell里执行一个文件里的命令:

  1. source /home/user/file.name

6.截取前5个字符:

  1. ${variable:0:5}

7.SSH debug 模式:

  1. ssh -vvv user@ip_address

8.SSH with pem key:

  1. ssh user@ip_address -i key.pem

9.用wget抓取完整的网站目录结构,存放到本地目录中:

  1. wget -r --no-parent --reject "index.html*" http://hostname/ -P /home/user/dirs

10.一次创建多个目录:

  1. mkdir -p /home/user/{test,test1,test2}

11.列出包括子进程的进程树:

  1. ps axwef

12.创建 war 文件:

  1. jar -cvf name.war file

13.测试硬盘写入速度:

  1. dd if=/dev/zero of=/tmp/output.img bs=8k count=256k; rm -rf /tmp/output.img

14.测试硬盘读取速度:

  1. hdparm -Tt /dev/sda

15.获取文本的md5 hash:

  1. echo -n "text" | md5sum

16.检查xml格式:

  1. xmllint --noout file.xml

17.将tar.gz提取到新目录里:

  1. tar zxvf package.tar.gz -C new_dir

18.使用curl获取HTTP头信息:

  1. curl -I http://www.example.com

19.修改文件或目录的时间戳(YYMMDDhhmm):

  1. touch -t 0712250000 file

20.用wget命令执行ftp下载:

  1. wget -m ftp://username:password@hostname

21.生成随机密码(例子里是16个字符长):

  1. LANG=c < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16};echo;

22.快速备份一个文件:

  1. cp some_file_name{,.bkp}

23.访问Windows共享目录:

  1. smbclient -U "DOMAIN\user" //dc.domain.com/share/test/dir

24.执行历史记录里的命令(这里是第100行):

  1. !100

25.解压:

  1. unzip package_name.zip -d dir_name

26.输入多行文字(CTRL + d 退出):

  1. cat > test.txt

27.创建空文件或清空一个现有文件:

  1. \> test.txt

28.与Ubuntu NTP server同步时间:

  1. ntpdate ntp.ubuntu.com

29.用netstat显示所有tcp4监听端口:

  1. netstat -lnt4 | awk '{print $4}' | cut -f2 -d: | grep -o '[0-9]*'

30.qcow2镜像文件转换:

  1. qemu-img convert -f qcow2 -O raw precise-server-cloudimg-amd64-disk1.img \precise-server-cloudimg-amd64-disk1.raw

31.重复运行文件,显示其输出(缺省是2秒一次):

  1. watch ps -ef

32.所有用户列表:

  1. getent passwd

33.Mount root in read/write mode:

  1. mount -o remount,rw /

34.挂载一个目录(这是不能使用链接的情况):

  1. mount --bind /source /destination

35.动态更新DNS server:

  1. nsupdate < <EOF
  2. update add $HOST 86400 A $IP
  3. send
  4. EOF

36.递归grep所有目录:

  1. grep -r "some_text" /path/to/dir

37.列出前10个最大的文件:

  1. lsof / | awk '{ if($7 > 1048576) print $7/1048576 "MB "$9 }' | sort -n -u | tail

38.显示剩余内存(MB):

  1. free -m | grep cache | awk '/[0-9]/{ print $4" MB" }'

39.打开Vim并跳到文件末:

  1. vim + some_file_name

40.Git 克隆指定分支(master):

  1. git clone git@github.com:name/app.git -b master

41.Git 切换到其它分支(develop):

  1. git checkout develop

42.Git 删除分支(myfeature):

  1. git branch -d myfeature

43.Git 删除远程分支

  1. git push origin :branchName

44.Git 将新分支推送到远程服务器:

  1. git push -u origin mynewfeature

45.打印历史记录中最后一次cat命令:

  1. !cat:p

46.运行历史记录里最后一次cat命令:

  1. !cat

47.找出/home/user下所有空子目录:

  1. find /home/user -maxdepth 1 -type d -empty

48.获取test.txt文件中第50-60行内容:

  1. < test.txt sed -n '50,60p'

49.运行最后一个命令(如果最后一个命令是mkdir /root/test, 下面将会运行: sudo mkdir /root/test):

  1. sudo !!

50.创建临时RAM文件系统 – ramdisk (先创建/tmpram目录):

  1. mount -t tmpfs tmpfs /tmpram -o size=512m

51.Grep whole words:

  1. grep -w "name" test.txt

52.在需要提升权限的情况下往一个文件里追加文本:

  1. echo "some text" | sudo tee -a /path/file

53.列出所有kill signal参数:

  1. kill -l

54.在bash历史记录里禁止记录最后一次会话:

  1. kill -9 $$

55.扫描网络寻找开放的端口:

  1. nmap -p 8081 172.20.0.0/16

56.设置git email:

  1. git config --global user.email "me@example.com"

57.To sync with master if you have unpublished commits:

  1. git pull --rebase origin master

58.将所有文件名中含有”txt”的文件移入/home/user目录:

  1. find -iname "*txt*" -exec mv -v {} /home/user \;

59.将文件按行并列显示:

  1. paste test.txt test1.txt

60.shell里的进度条:

  1. pv data.log

61.使用netcat将数据发送到Graphite server:

  1. echo "hosts.sampleHost 10 `date +%s`" | nc 192.168.200.2 3000

62.将tabs转换成空格:

  1. expand test.txt > test1.txt

63.Skip bash history:

  1. < space >cmd

64.去之前的工作目录:

  1. cd -

65.拆分大体积的tar.gz文件(每个100MB),然后合并回去:

  1. split b 100m /path/to/large/archive /path/to/output/files
  2. cat files* > archive

66.使用curl获取HTTP status code:

  1. curl -sL -w "%{http_code}\\n" www.example.com -o /dev/null

67.设置root密码,强化MySQL安全安装:

  1. /usr/bin/mysql_secure_installation

68.当Ctrl + c不好使时:

  1. Ctrl + \

69.获取文件owner:

  1. stat -c %U file.txt

70.block设备列表:

  1. lsblk -f

71.找出文件名结尾有空格的文件:

  1. find . -type f -exec egrep -l " +$" {} \;

72.找出文件名有tab缩进符的文件

  1. find . -type f -exec egrep -l $'\t' {} \;

73.用”=”打印出横线:全选复制放进笔记

  1. printf '%100s\n' | tr ' ' =
 

1.检查远程端口是否对bash开放:

  1. echo >/dev/tcp/8.8.8.8/53 && echo "open"

2.让进程转入后台:

  1. Ctrl + z

3、将进程转到前台:

  1. fg

4.产生随机的十六进制数,其中n是字符数:

  1. openssl rand -hex n

5.在当前shell里执行一个文件里的命令:

  1. source /home/user/file.name

6.截取前5个字符:

  1. ${variable:0:5}

7.SSH debug 模式:

  1. ssh -vvv user@ip_address

8.SSH with pem key:

  1. ssh user@ip_address -i key.pem

9.用wget抓取完整的网站目录结构,存放到本地目录中:

  1. wget -r --no-parent --reject "index.html*" http://hostname/ -P /home/user/dirs

10.一次创建多个目录:

  1. mkdir -p /home/user/{test,test1,test2}

11.列出包括子进程的进程树:

  1. ps axwef

12.创建 war 文件:

  1. jar -cvf name.war file

13.测试硬盘写入速度:

  1. dd if=/dev/zero of=/tmp/output.img bs=8k count=256k; rm -rf /tmp/output.img

14.测试硬盘读取速度:

  1. hdparm -Tt /dev/sda

15.获取文本的md5 hash:

  1. echo -n "text" | md5sum

16.检查xml格式:

  1. xmllint --noout file.xml

17.将tar.gz提取到新目录里:

  1. tar zxvf package.tar.gz -C new_dir

18.使用curl获取HTTP头信息:

  1. curl -I http://www.example.com

19.修改文件或目录的时间戳(YYMMDDhhmm):

  1. touch -t 0712250000 file

20.用wget命令执行ftp下载:

  1. wget -m ftp://username:password@hostname

21.生成随机密码(例子里是16个字符长):

  1. LANG=c < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16};echo;

22.快速备份一个文件:

  1. cp some_file_name{,.bkp}

23.访问Windows共享目录:

  1. smbclient -U "DOMAIN\user" //dc.domain.com/share/test/dir

24.执行历史记录里的命令(这里是第100行):

  1. !100

25.解压:

  1. unzip package_name.zip -d dir_name

26.输入多行文字(CTRL + d 退出):

  1. cat > test.txt

27.创建空文件或清空一个现有文件:

  1. \> test.txt

28.与Ubuntu NTP server同步时间:

  1. ntpdate ntp.ubuntu.com

29.用netstat显示所有tcp4监听端口:

  1. netstat -lnt4 | awk '{print $4}' | cut -f2 -d: | grep -o '[0-9]*'

30.qcow2镜像文件转换:

  1. qemu-img convert -f qcow2 -O raw precise-server-cloudimg-amd64-disk1.img \precise-server-cloudimg-amd64-disk1.raw

31.重复运行文件,显示其输出(缺省是2秒一次):

  1. watch ps -ef

32.所有用户列表:

  1. getent passwd

33.Mount root in read/write mode:

  1. mount -o remount,rw /

34.挂载一个目录(这是不能使用链接的情况):

  1. mount --bind /source /destination

35.动态更新DNS server:

  1. nsupdate < <EOF
  2. update add $HOST 86400 A $IP
  3. send
  4. EOF

36.递归grep所有目录:

  1. grep -r "some_text" /path/to/dir

37.列出前10个最大的文件:

  1. lsof / | awk '{ if($7 > 1048576) print $7/1048576 "MB "$9 }' | sort -n -u | tail

38.显示剩余内存(MB):

  1. free -m | grep cache | awk '/[0-9]/{ print $4" MB" }'

39.打开Vim并跳到文件末:

  1. vim + some_file_name

40.Git 克隆指定分支(master):

  1. git clone git@github.com:name/app.git -b master

41.Git 切换到其它分支(develop):

  1. git checkout develop

42.Git 删除分支(myfeature):

  1. git branch -d myfeature

43.Git 删除远程分支

  1. git push origin :branchName

44.Git 将新分支推送到远程服务器:

  1. git push -u origin mynewfeature

45.打印历史记录中最后一次cat命令:

  1. !cat:p

46.运行历史记录里最后一次cat命令:

  1. !cat

47.找出/home/user下所有空子目录:

  1. find /home/user -maxdepth 1 -type d -empty

48.获取test.txt文件中第50-60行内容:

  1. < test.txt sed -n '50,60p'

49.运行最后一个命令(如果最后一个命令是mkdir /root/test, 下面将会运行: sudo mkdir /root/test):

  1. sudo !!

50.创建临时RAM文件系统 – ramdisk (先创建/tmpram目录):

  1. mount -t tmpfs tmpfs /tmpram -o size=512m

51.Grep whole words:

  1. grep -w "name" test.txt

52.在需要提升权限的情况下往一个文件里追加文本:

  1. echo "some text" | sudo tee -a /path/file

53.列出所有kill signal参数:

  1. kill -l

54.在bash历史记录里禁止记录最后一次会话:

  1. kill -9 $$

55.扫描网络寻找开放的端口:

  1. nmap -p 8081 172.20.0.0/16

56.设置git email:

  1. git config --global user.email "me@example.com"

57.To sync with master if you have unpublished commits:

  1. git pull --rebase origin master

58.将所有文件名中含有”txt”的文件移入/home/user目录:

  1. find -iname "*txt*" -exec mv -v {} /home/user \;

59.将文件按行并列显示:

  1. paste test.txt test1.txt

60.shell里的进度条:

  1. pv data.log

61.使用netcat将数据发送到Graphite server:

  1. echo "hosts.sampleHost 10 `date +%s`" | nc 192.168.200.2 3000

62.将tabs转换成空格:

  1. expand test.txt > test1.txt

63.Skip bash history:

  1. < space >cmd

64.去之前的工作目录:

  1. cd -

65.拆分大体积的tar.gz文件(每个100MB),然后合并回去:

  1. split b 100m /path/to/large/archive /path/to/output/files
  2. cat files* > archive

66.使用curl获取HTTP status code:

  1. curl -sL -w "%{http_code}\\n" www.example.com -o /dev/null

67.设置root密码,强化MySQL安全安装:

  1. /usr/bin/mysql_secure_installation

68.当Ctrl + c不好使时:

  1. Ctrl + \

69.获取文件owner:

  1. stat -c %U file.txt

70.block设备列表:

  1. lsblk -f

71.找出文件名结尾有空格的文件:

  1. find . -type f -exec egrep -l " +$" {} \;

72.找出文件名有tab缩进符的文件

  1. find . -type f -exec egrep -l $'\t' {} \;

73.用”=”打印出横线:全选复制放进笔记

  1. printf '%100s\n' | tr ' ' =
 
 

73条日常Linux shell命令汇总的更多相关文章

  1. 73条日常Linux shell命令汇总,总有一条你需要!

    转载: 73条日常Linux shell命令汇总,总有一条你需要! 1.检查远程端口是否对bash开放: echo >/dev/tcp/8.8.8.8/53 && echo &q ...

  2. 常用Linux shell命令汇总

    1.检查远程端口是否对bash开放:echo >/dev/tcp/8.8.8.8/53 && echo "open" 2.让进程转入后台:Ctrl + z 3 ...

  3. 37条常用Linux Shell命令组合

    序号 任务 命令组合 1 删除0字节文件 find . -type f -size 0 -exec rm -rf {} \; find . type f -size 0 -delete 2 查看进程, ...

  4. 【Linux】Linux 常用命令汇总

    查看软件xxx安装内容:dpkg -L xxx 查找软件库中的软件:apt-cache search 正则表达式 查找软件库中的软件:aptitude search 软件包 查找文件属于哪个包:dpk ...

  5. java使用Runtime.exec()运行windwos dos或linux shell命令

    使用Runtime.exec()运行windwos dos或linux shell命令,按实际情况具体测试     实例代码: package com.bookoo.test.command; imp ...

  6. Linux shell命令中expr

    在Linux shell命令中expr虽然不是很起眼,但是它的作用是非常大的!到目前为止,我个人看来最大的作用就是两个——四则运算和字符串的操作. 先说四则运算,在Shell中四则运算不能简简单单的加 ...

  7. Linux/shell命令的实际应用——查看Port占用 netstat

    启动1024端口一下,是需要root权限的 该Linux/shell命令主要用于解决: 1.查看某端口是否被占用: 2.查看某端口被哪个进程占用: 3.查看某个进程占用了哪些端口: 比如我tomcat ...

  8. [Python2.x] 利用commands模块执行Linux shell命令

    用Python写运维脚本时,经常需要执行linux shell的命令,Python中的commands模块专门用于调用Linux shell命令,并返回状态和结果,下面是commands模块的3个主要 ...

  9. 15个有趣好玩的linux shell 命令

    今天介绍一些有趣的linux shell命令,所有的命令都可以使用man + 命令名称 来查看完整的使用方法. 1,figlet 字符画 figlet 可以将英文字符串以字符画的形式输出: >& ...

随机推荐

  1. 003-spring boot项目的项目属性配置

    一.application.properties文件. 1.项目的配置文件内容.配置了端口,超时连接时间, 2.控制器. 3.访问. 二.application.yml文件 1.application ...

  2. XDU 1001 又是苹果(状态压缩)

    #include<cstdio> #include<cstring> ; using namespace std; int r[maxn],c[maxn]; char pic[ ...

  3. ruby中的self

    self,自己,在ruby中表示当前对象或默认对象.程序执行的任一时刻,有且仅有一个self. 1.谁成为self,在什么位置成为self? 要知道哪个对象是self,就必须知道当前的上下文.上下文主 ...

  4. 解决Ubuntu sudo apt-get install遇到的E: Sub-process /usr/bin/dpkg returned an error code (1)问题

    如题,本人在安装samba等软件的时候,在命令行敲入: sudo apt-get install samba4命令的时候,系统在下载之后报错,大致内容如下: ~$ sudo apt-get insta ...

  5. cocostudio 在VS模拟器中加载资源显示混乱问题

    这个是由于cocos2d-x的资源是统一按照文件名管理的,所以游戏全局不能有重名. PS:所有用到的素材名字必须单一.

  6. Ubuntu下安装keras

    0 系统版本Ubuntu16.04 1 系统更新 sudo apt update sudo apt upgrade 2 安装python基础开发包 sudo apt install -y python ...

  7. python os模块一些常用操作

    os.getcwd() ## 获取当前路径 os.chdir("dirpath") ## 改变目录 os.makedirs("dirname") ## 递归创建 ...

  8. SiteMesh使用(2.4.2)

    SiteMesh是一个网页布局和修饰的框架.我理解的是在一个母版页上引入页面各个位置的信息,从而拼接成一个页面展示出来.它定义了一个过滤器,把页面统一加上头部和底部. 我的项目是在springmvc中 ...

  9. 通过自动回复机器人学Mybatis笔记:接口式编程

    [接口式编程]尚未遇见Spring --> 代码量反而增加 1.增加约定,减少犯错的可能(不用直接去写字符串 修改点1:命名空间 修改点2:增加接口,方法名与配置文件中的id对应 package ...

  10. Java哲学家进餐

    某次操作系统实验存档. 这个哲学家除了吃就是睡.. 哲学家.java: package operating.entity.philosophyeating; import operating.meth ...