Linux常用命令

今天为大家整理一些常见的Linux命令,Linux现在应用场景比较多,如Android其实内置的也是一个Linux系统,服务器,大数据,云计算等,都是使用Linux,程序员中也有不少的开发机也是使用Linux,下面这些命令都是比较基本的,

用户/用户组管理

1
2
3
4
5
6
7
8
9
10
11
sudo passwd root  //修改root用户的密码    
su username //切换用户,其中username表示用户名,默认为root用户
sudo useradd "username" //添加用户(如果当前为root用户,则直接useradd "username")
userdel "username" //删除用户
groupadd "groupname" //添加名称为"groupname"的分组(可通过 tail -10 /etc/group查看用户组)
groupadd -g 504 "groupname" //添加名称为"groupname"的分组,gid为504,"groupname”为组名称。
groupdel "groupname" //删除分组
passwd //修改当前用户的登录密码
passwd "username" //修改指定名称为username的用户名
su //切换用户,默认为root用户
su - //切换用户并设置连同用户的环境变量一同切换过来

文件权限

1
2
3
4
5
6
7
8
9
10
chgrp "usergroup" "filename" //修改该文件的访问组 需要注意的是 usergroup是能够在/etc/group中存在的,如果不存在,则会提示错误信息,例如:chgrp userandy name.txt,则会显示“chgrp: 无效的组:"testuser"”。  
chown "username" "filename" //修改文件或文件夹的所属用户
chmod ”权限数字" "filename" //修改文件的访问权限
chattr "" “filename" //修改文件的特殊属性
lsattr -R //查看目录中的特殊属性,连同子目录的目录一并显示出
lsattr -a //显示目录中的特殊属性,连同隐藏文件一并显示出
which ls //查看ls命令的路径(该命令能够查看path路径中命令)
whereis passwd //查看并显示passwd的一个路径列表
locate passwd //查看并显示passwd命令的一个路径列表
find "" "filename" //查找文件

在linux中为了方便更改这些权限,linux使用数字去代替rwx ,具体规则为r: 4 w:2 x:1 -:0 举个例子,-rwxrwx—用数字表示就是 770,
值得提一下的是,在linux系统中,默认一个目录的权限为 755,而一个文件的默认权限为644。

查看文件内容

1
2
3
4
5
6
7
head "filename"   //查看文件内容,其中前面10行内容    
head -n "filename" //查看文件内容,其中n表示前多少行内容。
tail "filename" //查看文件内容,从文件后面数起。
tail -n "filename" //该文件的最后多少条数字
tail -f "filename" //动态显示文件内容中的10条内容
man ls //查看ls命令的帮助文档 按q退出
info ls //查看ls命令的帮助文档 按q退出

文件操作

1
2
3
4
5
6
7
8
9
10
11
12
13
ls        //显示当前目录下包含的文件以及文件夹。  
ls -l //显示当前目录下包含的文件以及文件夹并显示权限,创建者,最后访问时间。
ls -al //显示当前目录下包含文件的所有信息,包括创建时间,访问权限等。
ls -al --full-time //显示当前目录下包含文件的所有信息,包括创建时间,并显示完整的时间格式。
ll //显示目录下文件所有信息,包括访问权限,文件名,所属用户,所属用户组,最后访问时间等。
du //显示文件夹中的大小与访问路径。
ln "目录名称" "链接名称" //建立硬连接
ln -s "目录名称" "链接名称" //建立软连接
cp "源文件或源目标文件" "目标文件或文件夹" //拷贝文件
rmdir "dirname" //删除目录(空目录)
rm -rf "dirname" //删除目录(非空目录)(r参数为递归,f表示强制删除)
mv "filename" "newfilename" //在同一目录该命令为重命名效果
mv "filename" "dirpath" //在不同目录下,则为移动的效果

需要注意的是:
① 早期Unix系统文件名是最多允许14个字符,而新的Unix或者Linux系统中,文件名最长可以到达256个字符。

磁盘管理

df          //查看磁盘的总容量,使用容量,剩余容量。  
df -i       //使用inodes显示结果    
df -h       //使用合适的单位显示(单位为:(G))  
df -k        //以k为单位显示  
df -m         //以M为单位显示  
du            //查看某个目录所占空间大小  
du -b "file" //查看该文件所占空间大小 (以字节为大小)    
du -k       //以kb为单位输出   
du -m         //以Mb为单位输出  
du -h         //自动调节,如果为g则为g单位输出,如果为k则以k为单位输出  
du -sh "filename" //查看文件的内容并以最适合的单位输出

解压缩文件

gzip "filename"   //压缩文件(只能压缩文件,不能压缩目录),压缩后的后缀为.gz    
gzip -d "filename.txt.gz" //解压缩文件  
bzip2 -z "filename"        //压缩文件,压缩后后缀为bz2  
bzip2 -d "filename.txt.gz"        //解压缩文件  
tar -vcf "filedir"        //压缩目录,包括目录下的文件夹  
tar

注意事项:
① 如果使用gzip来压缩目录,则会提示如下错误信息:

gzip: book is a directory --ignored

常用快捷键

Ctrl+C:  //这个是用来终止当前命令的快捷键,当然你也可以输入一大串字符,不想让它运行直接就会跳入下一行。    
Tab:     //这个是最有用的键了,补全命令键。  
Ctrl+D:  //退出当前终端,同样也可以输入exit。  
Ctrl+Z:  //暂停当前进程。比如正在运行一个命令时,突然想停一下,就可以使用fg恢复它。  
Ctrl+L: //清屏,使光标移动到第一行。

Linux方面的知识,虽然谈不上是高大上,但是目前很多比较先进的技术都是基于Linux的,只有先把基础知识学会,才能有能力去接触一些比较先进的技术,以上Linux命令将会持续更新,一方面是给自己做的一个备忘录,另一方面是整理给一些有需要的小伙伴。