程序员

Linux命令

2019-03-12  本文已影响8人  周重hhh

Linux命令提示符

[root@localhost ~]#

基本操作

Linux的系统相关操作:

用户相关:

[root@localhost ~]# whoami
root

目录的常见操作

目录的相关命令

ls查看目录

目录操作命令

[root@localhost ~]# pwd
/root

mkdir创建新目录

[root@localhost tmp]# mkdir test1
[root@localhost tmp]# mkdir -p test2/1/2
[root@localhost tmp]# mkdir -m 750 tt
[root@localhost tmp]# mkdir -p -m 750 t1/t2

rmdir删除空目录

[root@localhost tmp]# rmdir test1/
[root@localhost tmp]# rmdir -p test2/r1/r2
[root@localhost tmp]# rmdir test/
rmdir: failed to remove `test/': Directory not empty

rm删除文件或子目录

[root@localhost tmp]# rm -r aa
rm: remove regular empty file `aaa'? y
[root@localhost tmp]# rm -rf test

cp复制文件

移动或重命名

链接命令

[root@localhost tmp]# ln -s a.txt bb.txt
[root@localhost test2]# ln -s /test2/t4 /test1/t44

软链接和硬链接的区别

软链接

硬链接

推荐使用软链接,硬链接和原始文件区分大小,无法区分

文件相关操作

Linux系统中使用以下命令来查看文件的内容:

cat 和 tac

[root@localhost tmp]# cat a
asdfghjk;

more

less

head/tail

[root@localhost tmp]# head /etc/sudo.conf
[root@localhost tmp]# head -n 20 /etc/sudo.conf
[root@localhost tmp]# tail /etc/sudo.conf
[root@localhost tmp]# tail -n 20 /etc/sudo.conf

文件基本属性

[d] 代表目录
[-] 代表文件
[l] 表示为链接文档(link file)
[b]表示为装置文件里面的可供存储的接口设备(可随机存取装置)
[c]表示装置文件里面的串行端口设备,例如鼠标、键盘(一次性读取设备)

文件的权限

从左至右用0-9这些数字来表示
第0位确定文件类型,第1-3位确定属主(该文件的所有者)拥有该文件的权限。第4-6位确定属组(所有者的同组用户)拥有该文件的权限。第7-9位确定其他用户拥有该文件的权限
第1、4、7位表示读权限,如果用"r"字符表示,则有读权限,如果用"-"字符表示,则没有读权限
第2、5、8位表示写权限,如果用"w"字符表示,则有写权限,如果用"-"字符表示,则没有写权限
第3、6、9位表示可执行权限,如果用"x"字符表示,则有执行权限,如果用"-"字符表示,则没有执行权限

image.png

更改文件权限

  owner = rwx = 4 + 2 + 1 = 7
  group = rwx = 4 + 2 + 1 = 7
  others = --- = 0 + 0 + 0 = 0

chmod 修改权限

chmod [-R] xyz 文件或目录

-R:进行递归变更,修改该目录下所有的子目录和文件。xyz:对应前面提到的数字权限,比如770。

chmod 751 mydir # 将mydir文件的权限改为drwxr-x--x

更改文件所属组

chgrp:更改文件所属组

chgrp [-R] 用户组名称 文件名

-R表示递归更改某个目录文件的属性,如果加上这个参数,表示该文件夹下的所有文件都会同时被修改

chgrp root mydir #将mydir的用户组改为root

更改文件所有者

chown:更改文件所有者

chown [-R] 所有者 文件名

-R表示递归更改某个目录文件的属性,如果加上这个参数,表示该文件夹下的所有文件都会同时被修改

chown root mydir #将mydir的所有者改为root用户

vi/vim编辑器

命令模式:用户刚进入vim就是命令模式
输入模式:在命令模式输入 i 进入输入模式
底部命令模式:在命令模式下按:进入底部命令模式

vi常用快捷键

命令模式

i 切换到输入模式,以输入字符
x 删除当前光标所在处的字符
: 切换到底部命令模式,在最后一行输入字符

输入模式
在此模式下,对文件内容进行编辑。再输入模式下可以使用以下按键:

底部命令模式

文件搜索命令
我们经常需要在系统中检索需要的文件,在Windows中可以使用F3进行搜索。在Linux中提供了多种文件搜索方式

locate

locate的配置文件

find

find [搜索范围] [搜索条件] 文件名

*:匹配任意多个字符
?:匹配任意一个字符
[]:匹配任意一个中括号中的字符

find /home -name a.txt          # 在/厚么目录下按照名称搜索a.txt
find /home -iname a.txt         # -iname指不区分文件名大小写
find /etc -name *.conf          # 在/etc目录下搜索以.conf结尾的文件
find -user qiu                  # 查找属于qiu的文件
find -type d/f                  # 根据文件类型查找,f普通文件,d目录
find -mtime -1/+1               # 查找1天以前或之后跟新的文件
find -ctime -1/+1               # 查找1分钟以前或之后创建的文件 

locate和find的区别

用户和用户组

添加用户

useradd 选项 用户名

-c:comment 指定一段注释性描述
-d:目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录
-g:永驻 指定用户所属的用户组
-s:Shell文件 指定 用户的登录Shell
-u:用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号

useradd -u user1                # 添加新用户user1
useradd -d /home/user1 -u user2 # 添加新用户,并指定用户家目录

设置用户密码

password 选项 用户名

-l:锁定口令,即禁用账号
-u:口令解锁
-d:使账号无口令
-f:强迫用户下次登陆时修改口令

password user1 # 修改用户 user1的密码

修改和删除用户

修改用户

usermod 选项 用户名

usermod -l newtest test # 修改test的用户名为newtest
usermod -G staff newuser2 # 将newuser2添加到组staff中

删除用户

userdel 选项 用户名

-r:将用户所在的目录一起删除

userdel -r user1 # 删除用户user1

添加用户组

groupadd 选项 组名

-g:GID指定信用住的组标识号(GID)
-o:一般与-g选项同时使用,表示信用住的GID可以与系统已有用户组的GID相同

groupadd usergroup1            # 添加用户组 usergroup1
groupadd -g 101 usergroup1     # 添加用户组usergroup1,并制定gid

删除用户组

groupdel 用户组

groupdel usergroup1 # 删除用户组 usergroup1
group add -g 1010 test # 添加一个用户组,组id为1010,组名称为test
useradd -u 1001 -g test -d /home/aaa aaa # 添加一个用户aaa到test组,用户id为1001,组名称为test,所在目录为/home/aaa目录
id aaa # 查看aaa用户的id信息

与用户相关的文件

上一篇 下一篇

猜你喜欢

热点阅读