Unix/Linux常用的命令

grep

在文件中查找字符串(不区分大小写)

$ grep -i "the" demo_file

输出成功匹配的行,以及该行之后的三行

$ grep -A 3 -i "example" demo_text

在一个文件夹中递归查询包含指定字符串的文件

$ grep -r "ramesh" *

find

查找指定文件名的文件(不区分大小写)

$ find -iname "MyProgram.c"

对找到的文件执行某个命令

$ find -iname "MyProgram.c" -exec md5sum {} \;

查找home目录下的所有空文件

$ find ~ -empty

SSH

登录到远程主机

$ ssh -l jsmith remotehost.example.com

调试ssh客户端

$ ssh -v -l jsmith remotehost.example.com

显示ssh客户端版本

$ ssh -V

sed

当你将Dos系统中的文件复制到Unix/Linux后,这个文件每行都会以\r\n结尾,sed可以轻易将其转换为Unix格式的文件,使用n结尾的文件

$ sed 's/.$//' filename

反转文件内容并输出

$ sed -n '1!G; h; p' filename

为非空行添加行号

$ sed '/./=' thegeekstuff.txt | sed 'N; s/\n/ /'

awk

删除重复行

$ awk '!($0 in array) { array[$0]; print}' temp

打印/etc/passwd中所有包含同样的uidgid的行

$ awk -F ':' '$3=$4' /etc/passwd

打印文件中的指定部分的字段

$ awk '{print $2,$5;}' employee.txt

vim

打开文件并跳到第10行

$ vim +10 filename.txt

打开文件跳到第一个匹配的行

$ vim +/search-term filename.txt

以只读模式打开文件

$ vim -R /etc/passwd

diff

比较的时候忽略空白符

$ diff -w name_list.txt name_list_new.txt

sort

以升序对文件内容排序

$ sort names.txt

以降序对文件内容排序

$ sort -r names.txt

以第三个字段对/etc/passwd的内容排序

$ sort -t: -k 3n /etc/passwd | more

cd

cd -可以在最近工作的两个目录间切换

使用shopt -s cdspell可以设置自动对cd命令进行拼写检查

gzip

创建一个*.gz的压缩文件

$ gzip test.txt

解压*.gz文件

$ gzip -d test.txt.gz

显示压缩的比率

$ gzip -l *.gz
     compressed        uncompressed  ratio uncompressed_name
          23709               97975  75.8% asp-patch-rpms.txt

bzip2

创建*.bz2压缩文件

$ bzip2 test.txt

解压*.bz2文件

bzip2 -d test.txt.bz2

解压*.zip文件

$ unzip test.zip

查看*.zip文件的内容

$ unzip -l jasper.zip
Archive:  jasper.zip
Length     Date   Time    Name
--------    ----   ----    ----
40995  11-30-98 23:50   META-INF/MANIFEST.MF
32169  08-25-98 21:07   classes_
15964  08-25-98 21:07   classes_names
10542  08-25-98 21:07   classes_ncomp

shutdown

关闭系统并立即关机

$ shutdown -h now

10分钟后关机

$ shutdown -h +10

重启

$ shutdown -r now

重启期间强制进行系统检查

$ shutdown -Fr now

rm

删除文件前先确认

$ rm -i filename.txt

在文件名中使用shell的元字符会非常有用。删除文件前先打印文件名并进行确认

$ rm -i file*

递归删除文件夹下所有文件,并删除该文件夹

$ rm -r example

passwd

passwd用于在命令行修改密码,使用这个命令会要求你先输入旧密码,然后输入新密码

$ passwd

超级用户可以用这个命令修改其他用户的密码,这个时候不需要输入用户的密码

# passwd USERNAME

passwd还可以删除某个用户的密码,这个命令只有root用户才能操作,删除密码后,这个用户不需要输入密码就可以登录到系统

# passwd -d USERNAME

mysql

mysql可能是Linux上使用最广泛的数据库,即使你没有在你的服务器上安装mysql,你也可以使用mysql客户端连接到远程的mysql服务器

连接一个远程数据库,需要输入密码

$ mysql -u root -p -h 192.168.1.2

连接本地数据库

$ mysql -u root -p

你也可以在命令行中输入数据库密码,只需要在-p后面加上密码作为参数,可以直接写在p后面而不用加空格

yum

使用yum安装apache

$ yum install httpd

更新apache

$ yum update httpd

卸载/删除apache

$ yum remove httpd

rpm

使用rpm安装apache

# rpm -ivh httpd-2.2.3-22.0.1.el5.i386.rpm

更新apache

# rpm -uvh httpd-2.2.3-22.0.1.el5.i386.rpm

卸载/删除apache

# rpm -ev httpd

ping

ping一个远程主机,只发5个数据包

$ ping -c 5 gmail.com

date

设置系统日期

# date -s "01/31/2010 23:59:53"

当你修改了系统时间,你需要同步硬件时间和系统时间

# hwclock –systohc

# hwclock --systohc –utc

wget

使用wget从网上下载软件、音乐、视频

$ wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.1.tar.gz
下载文件并以指定的文件名保存文件
$ wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701

Last modification:May 12th, 2018 at 10:36 pm

© The copyright belongs to the author

 Support

If you think my article is useful to you, please feel free to appreciate

×Close

Appreciate the author

Sweeping payments

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏技术博文

Linux统计某文件夹下文件、文件夹的个数

统计某文件夹下文件的个数 ls -l |grep "^-"|wc -l 统计某文件夹下目录的个数 ls -l |grep "^d"|wc -l 统计文件夹下...

3696
来自专栏python爬虫日记

windows平台python 2.7环境编译安装zbar

最近一个项目需要识别二维码,找来找去找到了zbar和zxing,中间越过无数坑,总算基本上弄明白,分享出来给大家。

985
来自专栏菜鸟致敬

MySQL 删除数据库

使用 mysqladmin 删除数据库 使用普通用户登陆mysql服务器,你可能需要特定的权限来创建或者删除 MySQL 数据库。 所以我们这边使用root用...

34812
来自专栏KaliArch

MySQL常用操作

1363
来自专栏乐沙弥的世界

RMAN catalog 的创建和使用

在存储恢复目录的数据库创建表空间用于存储恢复目录schema及恢复目录数据(本文使用已经创建好的数据库catadb来存储恢复目录)

722
来自专栏mantou大数据

MacOS下SVN迁移Git踩坑记

1. First Blood 之前在Windows环境下进行svn到git的迁移是很简单的,参考官方文档。 可是在macOS环境下(macOS High Si...

4185
来自专栏Theo Tsao

Linux用户和文件权限管理

本文包含: 用户管理、用户组管理、基本权限及管理命令、POSIX ACL 权限系统及其管理命令。

774
来自专栏一个爱瞎折腾的程序猿

使用批处理脚本愉快的清理缓存

---------------手动分割线--------------- 使用上面的方法若无权限问题可无碍运行,然在某些做了安全设置的情况下貌似有点走不通,故有...

621
来自专栏ITCloud的专栏

容器实战指北:一篇让你快速上手Docker的全指导

| 作者简介 ? |安装docker环境 安装docker环境就不用再提了,直接参考官方文档就可以了,需要注意在中国境内玩docker,最好配好镜像加速器。 ...

952
来自专栏ml

ijg库的使用的几点注意

ijg库(http://www.ijg.org/)是用于处理jpeg解码和压缩的库,最新版本为2014发布的版本,可以在官网中下载jpegsr9a.zip 使用...

3285

扫码关注云+社区