参考教程:Linux 基础入门(新版)
若有不明白的,欢迎留言
Shell 常用快捷键:
ctrl+d 键盘输入结束或退出终端
ctrl+s 暂停当前程序,暂停后按下任意键恢复运行
ctrl+z 将当前程序放到后台运行,恢复到前台为命令fg
ctrl+a 将光标移至输入行头,相当于Home键
ctrl+e 将光标移至输入行末,相当于End
ctrl+k 删除从光标所在位置到行末
alt +Backspace 向前删除一个单词
shift+PgUp 将终端显示向上滚动
shift+PgDn 将终端显示向下滚动Shell 常用通配符:
*匹配 0 或多个字符
? 匹配任意一个字符
[list] 匹配 list 中的任意单一字符
[^list] 匹配 除list 中的任意单一字符以外的字符
[c1-c2] 匹配 c1-c2 中的任意单一字符 如:[0-9] [a-z]
{string1,string2,...} 匹配 string1 或 string2(或更多)其一字符串
{c1..c2} 匹配c1-c2中全部字符 如{1..10}Shell 查看命令手册:
man <command_name>
例如:man man
为了便于查找,man手册被进行了分册(分区段)处理,分为8个区段:
1 一般命令
2 系统调用
3 库函数,涵盖了C标准函数库
4 特殊文件(通常是/dev中的设备)和驱动程序
5 文件格式和约定
6 游戏和屏保
7 杂项
8 系统管理命令和守护进程
要查看相应区段的内容,就在man后面加上相应区段的数字即可,如:$ man 1 ls
所有的手册页遵循一个常见的布局,为了通过简单的ASCII文本展示而被优化,而这种情况下可能没有任何形式的高亮或字体控制。
一般包含以下内容:
NAME(名称)
该命令或函数的名称,接着是一行简介。
SYNOPSIS(概要)
对于命令,正式的描述它如何运行,以及需要什么样的命令行参数。对于函数,介绍函数所需的参数,以及哪个头文件包含该函数的定义。
DESCRIPTION(说明)
命令或函数功能的文本描述。
EXAMPLES(示例)
常用的一些示例。
SEE ALSO(参见)
相关命令或函数的列表。
也可能存在其它部分内容,但这些部分没有得到跨手册页的标准化。常见的例子包括:OPTIONS(选项),EXIT STATUS(退出状态),ENVIRONMENT(环境),BUGS(程序漏洞),FILES(文件),AUTHOR(作者),REPORTING BUGS(已知漏洞),HISTORY(历史)和 COPYRIGHT(版权)。-
创建用户
$ su <user>
切换用户
$ su -l <user>
切换用户
$ su - <user>
切换用户,同时环境变量也会变换
$ sudo adduser <user>
新建用户
$ sudo useradd <user>
新建用户
$ sudo passwd -d <user>
删除用户密码
$ sudo -u <user> passwd
设置用户密码adduser
和useradd
的区别:
useradd
只创建用户,创建完用passwd <user>
设置(修改)密码。adduser
会创建用户,创建目录,创建密码,做这一系列操作。 用户组(group)
查看用户组命令:
$ groups <user name> // 冒号之前为用户:冒号之后为所属用户组
查看group文件内容:
$ cat /etc/group | sort
$ cat /etc/group | grep -E "<user name>"
/etc/group 的内容包括用户组(Group)、用户组口令、GID及该用户组所包含的用户(User),每个用户组一条记录。格式如下:
group_name:password:GID:user_list
将其他用户加入 sudo 用户组
$ sudo usermod -G sudo <user name>
删除用户
$ sudo deluser <user name> --remove-home
查看文件权限
$ ls -l // 使用较长格式列出文件
输出:
drdwxr-xr-x 3 zp zp 4096 Feb 28 21:06 Desktop
drwxr-xr-x 4 zp zp 4096 Feb 21 20:30 Documents
drwxr-xr-x 2 zp zp 4096 Feb 24 23:14 Downloads
-rw-r--r-- 1 zp zp 6529 Feb 27 19:36 lzpwepiibwiu
drwxr-xr-x 4 zp zp 4096 Feb 21 19:02 Music
drwxr-xr-x 2 zp zp 4096 Feb 20 14:43 Pictures
drwxr-xr-x 3 zp zp 4096 Feb 21 20:37 Steam
drwxr-xr-x 2 zp zp 4096 Feb 20 14:55 Videos
drwxr-xr-x 2 zp zp 4096 Feb 20 15:50 模板
解释:
- 文件类型
关于文件类型,这里有一点你必须时刻牢记 Linux里面一切皆文件,正因为这一点才有了设备文件( /dev 目录下有各种设备文件,大都跟具体的硬件设备相关)这一说。
软连接文件:Linux 链接文件分为两种,另一种是“硬链接”,而软件链接等同于 Windows 上的快捷方式。
块设备、字符设备
socket: 网络套接字。
pipe 管道
-
文件权限
-
读权限:表示你可以使用
cat <file name>
之类的命令来读取某个文件的的内容 - 写权限:表示你可以编辑和修改某个文件
-
执行权限:通常指可以运行的二进制程序文件或脚本文件,如同 Windows 上的
exe
后缀的文件,不过 Linux 上不是通过文件后缀名来区分文件的类型。你需要注意的一点是,一个目录同时具有读权限和执行权限才可以打开并查看内部文件,而一个目录要有写权限才允许在其中创建其它文件,这是因为目录文件实际保存着该目录里面的文件的列表等信息 - 链接数:链接到该文件所在的 inode 结点的文件名数目
-
文件大小:以 inode 结点大小为单位来表示的文件大小,你可以给
ls
加上-lh
参数来更直观的查看文件的大小
-
读权限:表示你可以使用
除
ls -lh
外其它关于ls
的命令:
$ ls -A
显示除了.
(当前目录)和..
(上一级目录)之外的所有文件,包括隐藏文件
$ ls -Al
查看某一个目录的完整属性,而不是显示目录里面的文件属性
$ ls -dl <file name>
显示所有文件大小,并以普通人类能看懂的方式呈现
$ ls -AsSh
其中小 s 为显示文件大小,大 S 为按文件大小排序
-
$ touch <file name>
创建文件 -
$ sudo chown <user name> <file name>
修改文件所有者 -
$ echo "<content>" > <file name>
给文件添加内容 -
修改文件权限
-
二进制数字表示:
$ chmod <abc> <file name>
其中 a,b,c 各为一个数字,分别代表 User、Group、及 Other 的权限。
chmod 777 file (等价于 chmod u=rwx,g=rwx,o=rwx file 或 chmod a=rwx file)
设置所有人可以读写及执行
chmod 600 file (等价于 chmod u=rw,g=---,o=--- file 或 chmod u=rw,go-rwx file )
设置拥有者可读写,其他人不可读写执行 -
加减赋值操作:
g
、o
、u
和a
分别表示 group、others、user 和 all,+ 和 - 分别表示增加和去掉相应的权限。$ chmod ugo r <file name>
设置所有用户可读取文件
$ chmod a r <file name>
设置所有用户可读取文件
$ chmod u rwx <file name>
设置只有拥有者可以读写及执行
$ chmod a+r,ug+w,o-w a.conf b.xml
设置文件 a.conf 与 b.xml 权限为拥有者与其所属同一个群组 可读写,其它组可读不可写
$ chmod
设置当前目录下的所有档案与子目录皆设为任何人可读写
-
-
Linux 目录结构
wm (1).png
文件操作命令
$ touch <file name>
新建文件
$ cp <file name> <path name>
复制文件目录操作命令
$ mkdir <folder name>
新建目录
$ mkdir -p <path name>
新建多级目录
$ cp -r <folder name> <path name>
复制目录查看文件
$ cat <file name>
查看文件
$ cat -n <file name>
查看文件,显示行号
$ tac <file name>
查看文件,倒叙显示
$ more <file name>
分页查看文件,Enter
滚动一行,Space
滚动一页,h
显示帮助,q
退出。
$ head <file name>
查看文件头10行
$ tail <file name>
查看文件后10行
$ head/tail -n <n> <file name>
查看文件第n
行$ file <file name>
查看文件类型$ vimtutor
Linux内部vim学习教程$ xeyes
这是一个彩蛋