linux操作系统的意思就是可以操作硬件的软件,现实中就有常用的操作系统:win7 win10 mac Android......
内核版本是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。
linux发行版本有:Fedora Redhat Ubuntu
linux与windows文件系统的区别:windows打开 “计算机” 下,看到的乃是一个个驱动器盘符;而在linux系统中则不同,是看不到这些盘符的,只有一个 “/” 目录,所有的文件都里面。
相对路径和绝对路径:从 “/” 目录开始描述的路径为绝对路径,例如:cd /home ls /usr
相对路径就是从当前路径开始描述的路径,例如:cd ../..
linux常用的基本命令有:命令的使用方法:command [-options] [parameter1] command: 命令名,相应功能的英文单词或单词的缩写 [-options]:选项,可用来对命令进行控制,也可以省略,[]代表可选 parameter1 …:传给命令的参数:可以是零个一个或多个。
查看帮助文档,如:ls --help 是linux系统自带的一个帮助信息 ; man 有问题找男人; 自动补全tab键;history可以查看历史信息
linux常用命令大全
ls查看当前文件信息,常用的参数有 -a 显示隐藏文件 ; -l 显示文件的详细信息; -h 配合-l以人性化的方式显示文件大小。
通配符:* 文件代表文件名中所有字符 ; te* 查找以te开头的文件; *html查找以html结尾的文件;?代表文件中任意的一个字符; ls ?.c只找第一个字符任意,后缀为.c的文件;[][和“]”将字符组括起来,表示可以匹配字符组中的任意一个。“-”用于表示字符范围。
输出重定向:>为覆盖;>>为追加。格式:ls > test.txt ( test.txt 如果不存在,则创建,存在则覆盖其内容 )
分屏显示:more查看过多内容常用
管道:丨 一个命令的输出可以通过管道做为另一个命令的输入。
管道我们可以理解现实生活中的管子,管子的一头塞东西进去,另一头取出来,这里“ | ”的左右分为两端,左端塞东西(写),右端取东西(读)。格式:cat 1.txt 丨 more
假清屏:clear
切换工作目录:cd 切换到当前用户的主目录(/home/用户目录),用户登陆的时候,默认的目录就是用户的主目录。cd ..返回上级目录;cd ~切换到当前用户的主目录(/home/用户目录);注意:
- 如果路径是从根路径开始的,则路径的前面需要加上 “ / ”,如 “ /mnt ”,通常进入某个目录里的文件夹,前面不用加 “ / ”。
显示当前路径:pwd
创建目录:mkdir通过mkdir命令可以创建一个新的目录。参数-p可递归创建目录。
创建文件:touch
删除空目录:rmdir
删除目录:rm -irf 以交互形式/递归删除目录下所有文件/强制删除
建立软硬连接:ln -s 建立软连接;软链接不占用磁盘空间。源文件删除则软链接失效。ln 建立硬链接;硬链接只能链接普通文件,不能链接目录。
查看文本内容:cat
文本搜索:grep 用法:grep 'a' 1.txt -v
显示不包含匹配文本的所有行(相当于求反)
-n
显示匹配行及行号
-i
忽略大小写
^a
行首,搜寻以 m 开头的行;grep -n '^a' 1.txt
ke$
行尾,搜寻以 ke 结束的行;grep -n 'ke$' 1.txt
查找文件:findfind ./ -name test.sh
查找当前目录下所有名为test.sh的文件
find ./ -name '*.sh'
查找当前目录下所有后缀为.sh的文件
find ./ -name "[A-Z]*"
查找当前目录下所有以大写字母开头的文件
find /tmp -size 2M
查找在/tmp 目录下等于2M的文件
find /tmp -size +2M
查找在/tmp 目录下大于2M的文件
find /tmp -size -2M
查找在/tmp 目录下小于2M的文件
find ./ -size +4k -size -5M
查找当前目录下大于4k,小于5M的文件
find ./ -perm 0777
查找当前目录下权限为 777 的文件或目录
复制:cp -f
已经存在的目标文件而不提示
-i
交互式复制,在覆盖目标文件之前将给出提示要求用户确认
-r
若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名。
-v
显示进度
移动文件:mv -f
禁止交互式操作,如有覆盖也不会给出提示
-i
确认交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件
-v
显示移动进度 mv同时也有重命名功能
归档
归档管理:tar 用法:tar -参数 打包文件名 文件 -c
生成档案文件,创建打包文件
-v
列出归档解档的详细过程,显示进度
-f
指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后
-t
列出档案中包含的文件
-x
解开档
文件压缩解压:gizp 其扩展名为xxxx.tar.gz压缩用法:tar cvzf 压缩包包名 文件1 文件2 ...
-z :指定压缩包的格式为:file.tar.gz 解压用法: tar zxvf 压缩包包名
-z:指定压缩包的格式为:file.tar.gz
用户 命令 权限管理
添加用户账号:useradd 命令的使用格式: useradd [参数] 新建用户账号 -d指定用户登录系统时的主目录,如果不使用该参数,系统自动在/home目录下建立与用户名同名目录为主目录
-m自动建立目录
-g指定组名称
设置用户密码:passwd
删除用户:userdel
userdel abc(用户名)删除abc用户,但不会自动删除用户的主目录
userdel -r abc(用户名)删除用户,同时删除用户的主目录
查看有哪些用户组:cat /etc/group
添加组跟删除组:groupadd跟groupdel
修改文件权限:chmod
r read 表示可读 数字代表 4 ; w write 表示可写 数字代表2 ; x excute 表示可执行 数字代表1
- 数字代表0 没有任何权限
编辑器之神
vi是“Visual interface”的简称,它在Linux上的地位就仿佛Edit程序在DOS上一样。vi没有菜单,只有命令,且命令繁多。emacs
Vi有三种基本工作模式:
+ 命令模式 不管在任何模式下只要按esc即可进入
+ 文本输入模式 输入i 即可进入
+ 末行模式。 在命令模式下:即可进入
i: 插入光标前一个字符
I: 插入行首
a: 插入光标后一个字符
A: 插入行未
o: 向下新开一行,插入行首
O: 向上新开一行,插入行首
h: 左移
j: 下移
k: 上移
l: 右移
M: 光标移动到中间行
L: 光标移动到屏幕最后一行行首
G: 移动到指定行,行号G
w: 向后一次移动一个字
b: 向前一次移动一个字
{: 按段移动,上移
}: 按段移动,下移
Ctr-d: 向下翻半屏
Ctr-u: 向上翻半屏
Ctr-f: 向下翻一屏
Ctr-b: 向上翻一屏
gg: 光标移动文件开头
G: 光标移动到文x: 删除当前光标字符,相当于 Del
X: 删除光标前一个字符,相当于 Backspace
dd: 删除光标所在行,n dd 删除指定的行数 D: 删除光标后本行所有内容,包含光标所在字符
d0: 删除光标前本行所有内容,不包含光标所在字符
dw: 删除光标开始位置的字,包含光标所在字符
件末尾
u: 一步一步撤销
Ctr-r: 反撤销
>>: 文本行右移
<<: 文本行左移
yy: 复制当前行,n yy 复制 n 行
p: 在光标所在位置向下新开辟一行,粘贴
v: 按字符移动,选中文本
V: 按行移动,选中文本可视模式可以配合 d, y, >>, << 实现对文本块的删除,复制,左右移动 重复执行.
r: 替换当前字符
R: 替换当前行光标后的字符
/:输入字符
n: 下一个
N:上一个
把abc全部替换成123
末行模式下,将光标所在行的abc替换成123
:%s/abc/123/g
末行模式下,将第一行至第10行之间的abc替换成123
:1, 10s/abc/123/g