linux常用命令有哪些,第1张

Linux常用命令大全100条:

1,echo “aa” 》 testtxt 和 echo “bb” 》》 testtxt

//》将原文件清空,并且内容写入到文件中,》》将内容放到文件的尾部

2,chmod go+w -R /home/zhangy //给组用户和其他用户添加写的权限

3,tar -tzvf testtargz //列出归档内容

4,du -ah //查看文件列表大小

5,du -sh //查看所有文件的大小总和

6,echo ‘1+2’|bc -l //数学运算

7,uname -a //查看linux内核等的一些信息

8,badblocks -s /dev/sda //坏道扫描时显示进度

9,time command //查看命令的运行时间

10,ls -lrt //按时间的倒序排序

11,rsync -P //同步时显示进度

12history -c //清楚历史命令

13,cd - //返回上次目录

14,tree //显示目录树

15,umount -n /mnt/hda2 //强制卸载

16,echo ~/ //显示用户的home目录

17,echo $[55]e799bee5baa6e997aee7ad94e78988e69d8331333337376265 //算术运算

18,echo $((55)) //算术运算

19,eval ls;ps aux|grep httpd //这二个命令都能执行

20,free -m //有MB为单位显示内存

21,uptime

//显示系统已经运行了多长时间,它依次显示下列信息:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载

22,加法运算

[root@krlcgcms01 mytest]# let a=34+3;

[root@krlcgcms01 mytest]# echo $a;

23,export //查看所有环境变量

24,echo $PATH //查看单个变量

25,cmp file1 file2 //文件内容比对

26,clear //清屏

27,echo 23423 |awk --re-interval ‘/[0-9]{3,}/’ //如果不加re-interval的话,不显示

28,cal //得到一个整齐的日历格式

29,wc -l //统计行数,wc -w 统计单词

30,echo “AaDCbd23” |tr “[A-Z]” “[a-z]” 大写变小写,echo “AaDCbdc23” |tr -c b-d =

将b-d之外的字符串替换成=

31,echo “ADSF” | iconv -f UTF8 -t GBK //把字符由utf8转成gbk

-f是from和简写,-t好像terminal的简写

32,cat -n file //内容的前面会显示行号

33,chattr +i file //只读,root用户也没法对其进行修改

34,lsattr file //查看文件属性

35,cat /etc/passwd |awk -F: ‘{print $1}’ //查看系统中所有用户

36,cat /etc/group //查看系统中所有的组

37,groups //查前当前用户所在的,所有组

38,usermod -g 组名 用户 //这种方式是覆盖的方式,用的时候要小心,如果用户A性于mysql usermod -g php

mysql这样的话只属于php了

39,usermod -G 组名 用户 //这种方式是增加的方式,如果用户A性于mysql usermod -g php

mysql这样的话,mysql就属于2个组了

40,bc //进入数学计算中去

41,umask 003 u权限是7,g权限是7,其他用户是4,也就是774,777-003=774

42,mkfs -t vfat /dev/hda6 //将移动硬盘里面的一个分区格式化成vfat格式

43,mount /dev/cdrom /media/cdrom //挂载cdrom

44,getent group 532 //通过组ID,来查找组信息

45,last //登录成功用户记录

46,lastb //登录不成功用户记录

47,dump -S /dev/sda2 //查看一下要备份/dev/sda2所要的容量

48,dump -0j -f /dev/hda2/sda2_bakdumpbz2 /dev/sda2 //将sda2进行备份并压缩

49,restore -t -f /dev/hda2/sda2_bakdump //查看备份信息

50,restore -r -f /dev/hda2/sda2_bakdump //还原备份

51,fc-list //查看系统中安装的字体

52,find 。/ -type f -exec grep -q “root” {} ; -exec echo {} ;

//查找目录下文件所包涵的字符串

53,vmstat 5 //每5显示一下次系统信息,cpu,memory,i/o等

54,top 后 在shift + P 所占进程的排序显示

55,top 后 在shift + M 所占内存的排序显示

56,iptraf -g //查看各个接口的流量

57,ostat -d -x /dev/sda2 2 //用iostat查看磁盘/dev/sda2的磁盘i/o情况,每两秒刷新一次

58, paste -sd ‘|||n’ test //文件的每4行转换成1行,并用|隔开

59,lsof -i :22 //知道22端口现在运行什么程序

60,lsof -c abc //显示abc进程现在打开的文件

61,lsof -p 12 //看进程号为12的进程打开了哪些文件

63,route //查看路由信息

64,ifup //开启网卡

65,ifdown //关闭网卡

66,route del -net 17216800 netmask 25525500 dev eth0 //删除

172168这个网段

67,route add -net 172168100 netmask 2552552550 dev eth0 //增加一个路由

68,netstat -tunl //列出监听的网络服务端口

69,netstat -tun //列出已连接的网络服务端口

70,nmap -sP 1723040/24 //在这个网段内有多少用户在我的主机上操作,一个不错的安全检查工具

71,vgdisplay //查看系统中的可用空间

72,lvextend -L+20G /dev/tank/part1 //向part1这个分区增加20G的空间

73,lvresize -L-10G /dev/tank/part2 //向part2这个分区减少10G的空间

74,pvdisplay //查看磁盘信息

75,mplayer -loop 10 /mnt/song/music/花儿开了mp3 //循环播放10遍

76,pacman -S firefox -nd //nd去掉依赖

77,wget -c //断点下载

78,chroot /mnt/ubuntu //改变根目录到/mnt/ubuntu

79,ctrl+a //命令行下,光标称动到开头

80,ctrl+e //命令行下,光标移动结尾

81,cut -d: -f 1-4 test //用:分割文件,取分割后的1-4列

82,file /home/zhangy/testphp //用于查看文件的一些基本信息

83,touch testtxt //创建一个空文件 texttxt

84,htpasswd -cbd /usr/local/nginx/conf/authfile //创建访问控制文件

85,df //查看磁盘空间,和当前的磁盘数

86,fdisk -l //查看所有磁盘数

87,alsamixer //进入后,m键可以实现静音

88,killall httpd //把所有httpd进程杀掉

89,killall -9 mysqld_safe //有些进程超级用户也停止不了,-9是强制删除

90,mirror /mysql //下载mysql目录

91,mirror -R /mysql //上传mysql目录

92,rmmod pcspkr //关掉tab提示音

93,modprobe pcspkr //开启tab提示音

94,gpasswd -a zhangy wheel //将zhangy这个用户添加到wheel这个组

95,dd if=/dev/zero of=/virtual/ubuntuvirtimg bs=1M count=4096

//创建一个4G的IMG镜像

96,lspic //显示pci设备

97,lsusb //显示usb设备

98,history | less //less根more有点像,感觉less用着更舒服点

99,ln -s //如果忘了-s就变成硬链接了

100,tar zxvf testtargz -C /home/zhangy //将内容解压到指定目录

在前面的两个章节中,我们主要介绍了Linux基本知识和虚拟机的安装,从当前章节开始,我们一起学习下Linux的基本命令,在当前章节,我们先简单的学习下一些系统的基本命令,慢慢的由浅入深,在后面的章节中我们将学习其他的命令比如文件操作、备份压缩等

命令我们可以理解成在Windows中我们常常为了查看ip输入的ipconfig,在Linux中也有很多的命令,比如操作目录、文件、网络、磁盘等等命令

使用者权限:管理员用户

参数说明:

添加用户czbk(传智播客的首拼)执行

我们使用useradd命令创建了一个用户czbk

useradd 可用来建立用户帐号。帐号建好之后,再用 passwd 设定帐号的密码。

执行如下

由上图我们发现,我们在使用useradd新增用户的时候,出现了权限不足,也就是说我们使用用户itcast没有创建用户的权限。

我们通过管理员账号root进行创建,首先我们从控制台中切换到root

在 密码的地方输入我们的root密码root即可进入到root用户下。

我们在root下继续创建czbk用户

以下是useradd常用选项

用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用

使用者权限:管理员用户

指定和修改用户口令的Shell命令是 passwd 。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:

可使用的选项:

设置当前用户的口令

此处我们设置密码和itcast账号密码一致,为Itheima888

usermod 命令通过修改系统帐户文件来修改用户账户信息

修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。

使用者权限:管理员用户

修改已有用户的信息使用 usermod 命令,其格式如下:

下面命令将用户czbk用户名修改成czbk2019

以下是usermod常用选项

假如我们其中一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。

使用者权限:管理员用户

删除一个已有的用户账号使用 userdel 命令,其格式如下:

-f:强制删除用户,即使用户当前已登录;

-r:删除用户的同时,删除与用户相关的所有文件

此命令删除用户czbk2019

成功删除用户czbk2019

以下是userdel常用选项

引子:

为了方便用户管理, 提出了 组 的概念, 如下图所示

比如新建账户张三,那么它默认对应的组就是张三

一个用户可以有一个或者多个组

假如说(如上图),我们在企业级开发过程中,我们有多个组,其中一个开发组对应三个账户,张三、李四、王五、如果就像上面提到的,一个用户默认对应一个组,那么三个账户张三、李四、王五就有了三个不同的组,如果大家都操做一个文件,在进行权限分配的时候,就要对不同的三个组进行授权,显然这样是不合理的,因为太过繁琐。

所以,才有了组(新建组)的概念,我们把张三、李四、王五统一放到开发组,在对文件授权的时候,我们只对开发组进行授权由此,这样的话张三、李四、王五都有相等的权利操作了。

新增一个用户组(组名可见名知意,符合规范即可),然后将用户添加到组中

使用者权限:管理员用户

使用的选项有:

新增用户组czbk-it

上面的命令向系统中增加了一个新组czbk-it,新组的组标识号是在当前已有的最大组标识号的基础上加1

以下是groupadd常用选项

使用者权限:管理员用户

常用的选项有:

上面的命令将组czbk-it的组名修改为czbk-it-2019。

以下是groupmod常用选项

在查询用户所属的用户组前,我们先增加一个用户ituser-groups

要查询一个用户属于哪个用户组,使用groups命令,其格式如下

查询用户ituser-groups属于某个用户组,执行groups命令

由此可见,ituser-groups用户属于用户组ituser-groups(用户组默认与用户名一样)

使用者权限:管理员用户

要删除一个已有的用户组,使用groupdel命令,其格式如下

删除czbk-it-2019用户组

删除成功

以下是groupdel常用选项

1、创建一个新的组,并添加组ID(需要切换到root用户)

执行效果如下

2、创建3个用户(需要切换到root用户)

3、将上面三个用户添加到组itbj2020group

我们通过passwd命令将三个用户添加到组

什么是gpasswd:

gpasswd 是 Linux 下工作组文件 /etc/group 和 /etc/gshadow 管理工具,用于将一个用户添加到组或者从组中删除。

语法

将上面的三个用户使用gpasswd添加到组(需要切换到root用户)

执行如下

查看用户组下所有用户(所有用户)

执行效果如下(或者直接打开/etc/group文件都可以)

由上图可知:三个用户全部都加入到了itbj2020group组。

date 可以用来显示或设定系统的日期与时间

使用者权限:所有用户

语法如下:

参数

-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;

-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;

-u:显示GMT;

--help:在线帮助;

--version:显示版本信息

1、设置时间

用 -s选项可以设置系统时间,如下:

2、显示时间

协调世界时,又称世界统一时间、世界标准时间、国际协调时间。由于英文(CUT)和法文(TUC)的缩写不同,作为妥协,简称UTC。。

(2)GMT

即 格林尼治 平太阳时间,是指格林尼治所在地的标准时间,也是表示地球自转速率的一种形式

外文名: Universal Time

其他外文名 GMT(Greenwich Mean Time)

(3)CST

北京时间 (中国国家标准时间) 北京时间是中国采用国际时区东八时区的区时作为标准时间 。 北京时间并不是北京(东经1164°)的地方时间,而是东经120°的地方时间,故东经120度地方时比北京的地方时早约14分半钟。因为北京处于国际时区划分中的东八区,同格林尼治时间(世界时)整整相差8小时(即北京时间=世界时+8小时),故命名为“北京时间”。东八区包括的范围从东经1125°到东经1275°,以东经120°为中心线,东西各延伸75°,总宽度为15°的区域。 而中国幅员辽阔,东西相跨5个时区(即东五区、东六区、东七区、东八区、东九区5个时区)授时台必须建在地理中心地带,从而也就产生了长短波授。“北京时间”与“北京当地时间”是两个概念, “北京时间”的发播不在北京,而在陕西蒲城(处于东七区)

(4)东八区

东八区( UTC / GMT +08:00)是比 世界协调时间 (UTC)/ 格林尼治时间 (GMT)快8小时的时区,理论上的位置是位于 东经 1125度至1275度之间,是东盟标准的其中一个候选时区。当格林尼治标准时间为0:00时,东八区的标准时间为08:00

<pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="" cid="n486" mdtype="fences" style="font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-indent: 0px; text-transform: none; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none; box-sizing: border-box; overflow: visible; font-family: var(--monospace); font-size: 09em; display: block; break-inside: avoid; text-align: left; white-space: normal; background-image: inherit; background-size: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(248, 248, 248); border: 1px solid rgb(231, 234, 237); border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; padding: 8px 4px 6px; margin-bottom: 15px; margin-top: 15px; width: inherit; caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); position: relative !important; background-position: inherit; background-repeat: inherit;">总结:

上面提到了很多知识:即UTC/GMT/CST/东八区

总结一下就是,北京时间(中国国家标准时间CST)采用东八区区时,即:

协调世界时(UTC)+8 / 格林尼治时间(GMT)+8

也就是说+8后的时间才是北京时间</pre>

logname命令用于显示用户名称。

执行logname指令,它会显示目前用户的名称

语法为如下:

参数

显示登录账号的信息

su命令用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码。

使用权限:所有使用者。

语法如下:

变更帐号为 root 并在执行 ls 指令后退出返回原使用者

切换到root

这样的话,我们就进入到了root用户下。

id命令用于显示用户的ID,以及所属群组的ID。

id会显示用户以及所属群组的实际与有效ID。若两个ID相同,则仅显示实际ID。若仅指定用户名称,则显示目前用户的ID。

使用者权限:所有用户

语法

参数说明:

显示当前用户信息

执行效果如下

sudo:控制用户对系统命令的使用权限,root允许的操作。

通过sudo可以提高普通用户的操作权限

使用者权限:普通用户

语法如下:

sudo -V

sudo -h

sudo -l

sudo -v

sudo -k

sudo -s

sudo -H

sudo [ -b ] [ -p prompt ] [ -u username/#uid] -s

sudo command

参数说明

sudo命令使用

指定root用户执行指令

修改网卡配置文件

比如,在下面的例子中,我们使用普通用户修改网卡的配置文件,在进行保存的时候,提示我们无法打开并写入文件,那么此时,我们可以通过sudo命令来提升自己的写入权限

执行:

执行效果如下(保存)

然后点击回车

执行效果如下(键入itcast密码)

执行保存

top命令用于实时显示 process 的动态。

使用权限:所有使用者。

显示进程信息

执行效果如下

显示完整命令,与top命令不同的就是command属性像是进行了命令补全

执行效果如下

执行效果如下

Linux ps命令用于显示当前进程 (process) 的状态信息

使用者权限:所有用户

语法如下:

显示进程信息

显示指定用户信息

显示所有进程信息

Linux kill命令用于删除执行中的程序或工作(可强制中断)

使用者权限:所有用户

语法如下:

参数说明

杀死一个进程

强制杀死进程

彻底杀死进程

杀死指定用户所有进程

1方法一 过滤出itcast用户进程

2方法二,直接杀死

shutdown命令可以用来进行关闭系统,并且在关机以前传送讯息给所有使用者正在执行的程序,shutdown 也可以用来重开机

使用者权限:管理员用户

语法如下:

参数说明

立即关机

指定1分钟后关机,1分钟关机并显示警告信息

指定1分钟后重启,并发出警告信息

reboot命令用于用来重新启动计算机

使用者权限:管理员、普通(需要验证)用户

语法如下:

参数

开始重新启动

重启效果如下

who命令用于显示系统中有哪些使用者正在上面,显示的资料包含了使用者 ID、使用的终端机、从哪边连上来的、上线时间、呆滞时间、CPU 使用量、动作等等

使用者权限:所有使用者都可使用。

语法如下:

参数说明

显示当前登录系统的用户

显示明细(标题)信息

由上图可知,截止到现在只有itcast在线。

引子:

timedatectl是用于控制系统时间和日期。可以用来查询和更改系统时钟于设定,同时可以设定和修改时区信息。

在实际开发过程中,系统时间的显示会和实际出现不同步;我们一般为了校正服务器时间、时区的时候会使用timedatectl命令</pre>

使用者权限:所有使用者都可使用,设置时间需要管理员,下面会标注。

几个常见的概念,进行总结如下:

显示系统的当前时间和日期,使用命令行中的timedatectl命令

执行效果如下

上图显示中国时区

根据前面介绍的分区命令就可以创建分区了,不过需要注意,我们要为某些特定挂载点设置合适的分区大小。CentOS 7 (参考 Red Hat Ent erprise Linux 7 安装手册)至少需要为 /boot 、 / 、 /home 、 swap 这四个挂载点配置分区。下面是这四个挂载点分区大小建议:

下面是可选的挂载点分区:

为各挂载目录创建好分区之后,就可以为其创建文件系统了。

在 Windows 环境下,格式化的操作相对简单。通常的操作步骤是:先打开资源管理器,接着在希望被执行格式化的盘符图标上右击,然后选择“格式化”,再按照提示操作即可。也可以选择“快速格式化”,但要求分区没有坏道。需要注意的是:对硬盘执行格式化操作时,用户需要拥有系统管理员权限(仅限于 Windows Vista 以及此后推出的作业系统)。在 Windows 环境中,除了可以使用图形化的操作界面执行格式化操作之外,也可以在命令提示字符中使用 Diskpart 指令 (仅限于 Windows 2000 及以后的作业系统,包含 Windows PE)进行操作。

在 Unix/Linux 环境下,通常使用命令工具执行格式化操作。需要注意的是:对硬盘执行格式化操作时,用户需要拥有超级用户权限。创建文件系统的常用命令如下:

并非所有文件系统的命令工具都已经默认安装了。要想知道某个文件系统的命令工具是否可用,可以使用 type 命令。

每个文件系统命令都有很多命令行选项,允许你定制如何在分区上创建文件系统。要查看所有可用的命令行选项,可用 man 命令来显示该文件系统命令的手册页面。所有的文件系统命令都允许通过不带选项的简单命令来创建一个默认的文件系统。

为分区创建了文件系统之后,下一步是将它挂载到虚拟目录下的某个挂载点,这样就可以将数据存储在新文件系统中了。你可以将新文件系统通过 mount 命令挂载到虚拟目录中需要额外空间的任何位置。

现在你可以在新分区中保存新文件和目录了! 这种挂载文件系统的方法只能临时挂载文件系统。当重启 Linux 系统时,文件系统并不会自动挂载。要强制 Linux 在启动时自动挂载新的文件系统,可以将其添加到 /etc/fstab 文件。

如果用标准分区在硬盘上创建了文件系统,为已有文件系统添加额外的空间多少是一种痛苦的体验。你只能在同一个物理硬盘的可用空间范围内调整分区大小。如果硬盘上没有地方了,你就必须弄一个更大的硬盘,然后手动将已有的文件系统移动到新的硬盘上。这时候就可以通过将另外一个硬盘上的分区加入已有文件系统,动态地添加存储空间。 Linux 逻辑卷管理器(logical volume manager, LVM)软件包正好可以用来做这个。它可以让你在无需重建整个文件系统的情况下,轻松地管理磁盘空间。

逻辑卷管理的核心在于如何处理安装在系统上的硬盘分区。在逻辑卷管理的世界里,硬盘称作 物理卷(physical volume, PV) 。每个物理卷都会映射到硬盘上特定的物理分区。多个物理卷集中在一起可以形成一个 卷组(volume group, VG) 。逻辑卷管理系统 将卷组视为一个物理硬盘 ,但事实上卷组可能是由分布在多个物理硬盘上的多个物理分区组成的。 卷组提供了一个创建逻辑分区的平台,而这些逻辑分区则包含了文件系统。 整个结构中的最后一层是逻辑卷(logical volume, LV) 逻辑卷为 Linux 提供了创建文件系统的分区环境,作用类似于到目前为止我们一直在探讨的 Linux 中的物理硬盘分区。Linux 系统将逻辑卷视为物理分区。 每个逻辑卷可以被格式化成某种文件系统,然后挂载到虚拟目录中某个特定位置 。逻辑卷由 PE (physical extents,即物理区段)组成,PE 为硬盘可供指派给逻辑卷的最小单位(通常为4MB)。

注意,上图中的第三个物理硬盘有一个未使用的分区。通过逻辑卷管理,你随后可以轻松地将这个未使用分区分配到已有卷组:要么用它创建一个新的逻辑卷,要么在需要更多空间时用它来扩展已有的逻辑卷。 类似地,如果你给系统添加了一块硬盘,逻辑卷管理系统允许你将它添加到已有卷组,为某个已有的卷组创建更多空间,或是创建一个可用来挂载的新逻辑卷。这种扩展文件系统的方法要好用得多!

优点

比起正常的硬盘分区管理,LVM 更富于弹性:

这些优点使得 LVM 对服务器的管理非常有用,对于桌面系统管理的帮助则没有那么显著,你需要根据实际情况进行取舍。

缺点

Linux LVM 是由 Heinz Mauelshagen 开发的,于 1998年 发布到了 Linux 社区。它允许你在 Linux 上用简单的命令行命令管理一个完整的逻辑卷管理环境。 Linux LVM 有两个可用的版本。

大部分采用 26 或更高内核版本的现代 Linux 发行版都提供对 LVM2 的支持。除了标准的逻辑卷管理功能外, LVM2 还提供了另外一些好用的功能。

Linux LVM 包只提供了命令行程序来创建和管理逻辑卷管理系统中所有组件。有些 Linux 发行版则包含了命令行命令对应的图形化前端,但为了完全控制你的 LVM 环境,最好习惯直接使用这些命令。

此外,还可以使用以下命令来操作逻辑卷:

在手动增加或减小逻辑卷的大小时,要特别小心。逻辑卷中的文件系统需要手动修整来处理大小上的改变。大多数文件系统都包含了能够重新格式化文件系统的命令行程序,比如用于 ext2、 ext3 和 ext4 文件系统的 resize2fs 程序。

第一种方法:直接增大5G,写“+5G”

第二种方法:原来是10G,增大5G就是“15G”

动态扩容示例:

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » linux常用命令有哪些

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情