切换目录
cd 切换到当前用户的主目录
cd~ 切换到当前用户的主目录
cd. . 切换到上级目录
cd. 保持在当前目录
cd- 在两次工作目录间来回切换
- 绝对路径
例如在我的/home/grc/exchange/二级目录/三级目录下有一个文件test.txt,那这个文件的绝对路径就是/home/grc/exchange/二级目录/三级目录,可在任意目录下通过绝对路径找到这个文件:
- 相对路径
如果当前我在/home/grc/exchange这个目录下,那么上述文件的相对路径就是 ./二级目录/三级目录,当然这个./也可以不要:
给指令定义别名
-
可以为上述进入test.txt所在目录的指令另起一个别名,下次使用时可以不用输入这么长的指令
-
上述设置别名的方式在关闭终端的时候就失效了,如果想永久保存:
输入vim ~/.bashrc,在里面添加想要设置的别名,这样在下次启动终端的时候该别名也不会失效:
-
输入alias可以查看当前所有已经设置的别名
-
用系统中存储的.bashrc备份文件恢复到~/目录下(如果你和我一样不小心把它给删掉了)
cp /etc/skel/.bashrc ~/
vim文本编辑器常用指令
下载vim文本编辑器
sudo apt-get install vim
:i 插入
:w 保存文件但不退出vi
:wq 保存文件并退出vi
:q 不保存文件,退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑
上述所有指令都可以在后面加!表示强制执行
创建和删除文件以及文件夹
-
创建文件
touch a.txt
-
删除文件
rm a.txt
-
创建文件夹
mkdir NewFolder
-
删除空文件夹
rmdir NewFolder
-
删除非空文件夹及目录下所有文件
rm -rf Folder
软链接和硬链接
- 软链接:相当于windows里面的快捷方式,删除源文件之后软链接失效。
ln -s 源文件 目标文件
- 硬链接:相当于重新建立了一个文件与源文件内容相同,删除源文件后硬链接是不会失效的。
ln 源文件 目标文件
常用通配符
还有[!a]或者[^a]表示除了a之外的任意一个字符
复制文件到制定目录
cp [选项] 源文件或目录 目标文件或目录
-a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。
-d 拷贝时保留链接。
-f 删除已经存在的目标文件而不提示。
-i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。
-p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。
-r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
-l 不作拷贝,只是链接文件
管理员权限
- 输入命令:sudo su;
- 屏幕上会回显要求输入当前用户密码的提示,输入密码即可获得管理员权限;
- 若想退出管理员权限可输入命令:su 用户名.
创建和删除用户
-
创建用户user1
useradd user1
-
创建用户user1,并为其建立主目录(在/home目录下)
useradd -m user1
-
为用户user1设置密码
passwd user1
-
将用户 user1的登录名改为 u1
usermod –l u1 user1
-
删除用户user1和他的工作目录
userdel –r user1
-
查看用户信息uid和gid
id user1
-
切换到用户user1
su user1
创建和删除用户组
- 创建一个组users,其GID为888
groupadd –g 888 users
- 把 user1加入users组
gpasswd –a user1 users
- 把 user1退出users组
gpasswd –d user1 users
- 修改组名user为users
groupmod –n user users
- 删除组users
groupdel users
用chmod设置文件权限
chmod的用法大致分为两种
1.指定某类用户的权限
chmod [ u / g / o / a ] [ + / - / = ] [ r / w / x ] file
-
[ u / g / o / a ] 为权限范围,其中
u:User,即文件或目录的拥有者
g:Group,即文件或目录的所属群组
o:Other,除了文件或目录拥有者和所属群组外,其他用户都属于这个范围
a:All,即全部用户 -
权限操作
+表示增加权限
-表示取消权限
=表示取消之前的权限,并给予唯一的权限 -
权限代号
r:读取权限,数字代号为 “4”
w:写入权限,数字代号为 “2”
x:执行权限,数字代号为 “1”
-:不具备任何权限,数字代号为 “0” -
file,文件名(路径)
例如
sudo chmod u+rw /code/readme.txt
给 User 用户增加了对”/code/readme.txt”文件 “w” 和 “x” 的权限
2.同时指定三类用户的权限
chmod [xyz] file
其中x,y,z分别指定User、Group、Other的权限;用三位二进制数表示 ” r , w , x”(注意顺序)三种权限,其中 0 代表没有该权限,1 代表有该权限,如 100 则表示,有 ‘r”权限,无 “w x”权限;再将这个三位的二进制数转为十进制,则是 x (或y,z)的值
例如
sudo chmod 774 /code/readme.txt
User : 7 = 111 表示具有 ” r , w , x” 权限
Group : 7 = 111 表示具有 ” r , w , x” 权限
Other : 4 = 100 表示只具有 ” r ” 权限,而没有 “w,x” 权限
sudo chmod 774 *
” * ” 为通配符,表示对当前所在目录下的所有文件做权限修改操作
sudo chmod -R 774 /code/
修改这个目录,以及子目录下文件的权限