Linux 常用命令
查看文件
- ls [路径] - 列出指定路径下的文件和文件夹,默认为当前文件夹(下同)
- ls -a [路径] - 列出指定路径下的 所有 文件和文件夹(包含隐藏文件)
- ls -l [路径] - 以列表形式显示:是否为文件夹(第一个 “-“/”d” );此文件的操作权限(三个一组的 “-“/”rwx”);文件属主;文件属组;文件大小;最后更新时间
- ls -la [路径] - 以列表形式详细显示
- ll [路径] - 通常将
ls -la
定义为ll
,效果相同,自定义命令的方法自行百度日后添加 - la [路径] - 通常将
ls -a
定义为la
,效果(基本)相同
路径操作
- cd [路径] - 进入指定路径,默认为当前文件夹
- cd ../ - 返回上级目录
- cd / - 根目录
- cd ~ - 当前用户操作目录/家目录
- pwd - 查看当前路径
文件操作
- mkdir <文件夹名> - 创建空文件夹文件夹名>
- touch <文件名> - 创建空文件文件名>
- rm [路径]<文件> - 删除文件文件>
- rm [路径]<文件夹名> -r - 删除文件夹文件夹名>
- mv [路径]<文件/文件夹> <指向的路径> - 移动文件/文件夹指向的路径>
- cp [路径]<文件/文件夹> [路径][文件/文件夹] - 复制文件到制定路径/文件,不指定新文件名时不能为当前路径,有新文件名时可以不指定路径,默认在当前文件夹创建新文件
压缩打包
- tar <-操作>f <压缩包名> [文件]
压缩包名>
- -f - 放在多个操作选项的最后,指定操作的 tar 文件
- -c - 创建一个包
- -r - 追加文件到包内
tar -f [压缩包名] -r [文件名]
- -t - 列出包内的文件
- -x - 提取包内文件
- -U - 首先删除已存在文件,然后解压
- -z - ungzip 通过 gzip 过滤存档,简单来说就是压缩/解压缩选项
几个栗子:
- tar -cf t.tar a.txt b.txt - 把文件 a.txt 和 b.txt 打包成 t.tar
- tar -tvf t.tar - 详细信息的形式列出 t.tar 中的所有文件
- tar -xf t.tar - 从 t.tar 中提取所有文件
- tar -zcvf y.tar.gz <文件> - 将指定文件压缩打包成 y.tar ,同时显示操作的文件文件>
- tar -zxvf y.tar.gz - 解压提取包内文件同时显示解压出来的文件
压缩来说 tar 就是好程序了,7z 也不错,zip 也还行,其他的不考虑。由于 tar 是 Linux 自带的压缩程序,其他的都需要安装,操作 Linux 的话就用 tar 叭。
赋权分组
- chmod <文件所有者权限><群组访问权限><其他人访问权限> <文件名> - 更改文件的权限
文件名>其他人访问权限>群组访问权限>文件所有者权限>
- 输入
ll hon.txt
(hon.txt 是 root 用户创建的文件)后会显示-rw-r--r-- 1 root root 21 Sep 18 12:12 hon.txt
- 最开始的十个字符就是指示文件的访问状态的
- 第一个字符是文件标识,如果是 “-“ 说明这是个文件 ,如果是 “d” 说明这是个文件夹
- 接下来三个一组
- 第一个是 “r” - 可读 - 权值是 4
- 第二个是 “w” - 可写 - 权值是 2
- 第三个是 “x” - 可执行 - 权值是 1
- 每组的三个字符如果是 “-“ 表示没有此操作的权限,如果是字母表示有此操作的权限
- 例如上面那个实例,就是表示
hon.txt 是个文件;hon.txt 的所有者能读写;hon.txt 所有者所属用户组用户只能读;其他用户只能读
- chmod 后面跟的三个数字表示的就是三个分组的权限:1 - 只执行;2 - 只写;3 - 可写可执行;4 - 只读;5 - 可读可执行;6 - 可读写;7 - 可读可写可执行
- 例如
chomd 764 hon.txt
表示 文件的所有者 可读可写可执行;群组成员 可读写;其他用户 只能读 - 我认为这些操作已经高于我目前的需要,更多操作请看文末的参考文章
- 输入
- chown [-R] <用户名.组名> <文件/文件夹> - 将文件的所有者改为制定用户(或组,或二者同时),加上 -R 可更改文件夹下所有文件的属主用户名.组名>
- chgrp [-R] <组名> <文件/文件夹> - 将文件的所属组改为制定组,加上 -R 可更改文件夹下所有文件的属组
组名>
- 注:chown .hon a 和 chgrp hon a 的效果完全相同,都可以把文件 “a” 的数组变成 “hon”
用户操作
- cat /etc/passwd - 显示所有用户
- useradd <新用户名> - 创建新用户新用户名>
- userdel <用户名> - 删除用户用户名>
- gpasswd -a [用户名] [组名] - 将用户加入到组
- gpasswd -d [用户名] [组名] - 将用户从组中移除
- passwd [用户名] - 更改用户密码,默认为当先用户的密码
- w - 查看活动用户
- who - 查看当前用户
- whoami - 查看当前用户名
- last - 查看登录成功的用户记录
- lastb - 查看登录不成功的用户记录
组操作
- cat /etc/group - 显示所有组
- groups [用户名] - 显示用户所在组,默认为当前用户所在组
- groupadd <新组名> - 创建新组新组名>
- groupdel <组名> - 删除组组名>
- groupmod <组名> -n <组新名> - 更改组名组新名>组名>
查看进程
- top - 实施浏览服务器使用情况
- ps - 查看静态的进程统计信息 ( Processes Statistic )
- a - 显示当前终端下的所有进程信息,包括其他用户的进程
- u - 使用以用户为主的格式输出进程信息
- x - 显示当前用户在所有终端下的进程
- -e - 显示系统内的所有进程信息
- -l - 使用长(long)格式显示进程信息
- -f - 使用完整的(full)格式显示进程信息
需要注意的是,有一部分选项是不带 “-“ 前缀的(添加 “-“ 前缀后含义可能会有出入)
习惯上将上述选项组合在一起使用,如,ps aux
或 ps -elf
远程文件传输
- scp -r [文件/文件夹] [连接服务器的用户]@
:[路径] - 将本地文件上传到目标服务器 例:
scp -r /root/hon.txt root@192.168.1.100:/root/
将本地的文件 “hon.txt” 上传到目标服务器的 “/root” 文件夹中
注意连接时要输入目标服务器的 root 用户的密码 - scp -r [连接服务器的用户]@
:[路径] [路径] - 将目标服务器的文件/文件夹下载到本地文件夹中 例:
scp -r root@192.168.1.100:/root/newhon.txt /root/
将远程服务器的文件 “newhon.txt” 下载到本地 “/root” 文件夹中
注意连接时要输入目标服务器的 root 用户的密码
编辑器
- nano - Linux 自带的编辑器,操作简便难受
- vi - Linux 自带编辑器,经典编辑器之神,没有常年的联系恐怕适应不了
- vim - 需要安装的优化版 vi 编辑器,在 vi 的功能基础上支持各种简便操作,能够使新人快速上手
vim 基础操作
注:在 vim 编辑器内 按 esc 返回到命令模式 所有 vim 命令的都是在命令模式下开始的,如果不确定自己现在是什么模式,狂按几下 esc 就好了
编辑
- i - 从当前位置开始插入
- I - 从光标所在行行首开始插入
- a - 从光标下一个位置开始插入
- A - 从光标所在行行末开始插入
- s - 删除当前字符并插入
- S - 清空光标所在行并开始编辑
- o - 在下面新建一行开始编辑
- O - 在上面新建一行开始编辑
- x - 剪切当前位置的一个字符(或选中的一段字符)
- X - 剪切上一个位置的一个字符(若已有选框,剪切整行)
- u - 撤销一步操作
- U - 撤销一步撤销
- p - 在光标后面的位置粘贴
- P - 在光标前面的位置粘贴
- v - 从当前字符开始以单个字符为单位扩选
- V - 从当前行开始以行为单位扩选
- h - 光标向左移动
- j - 向下
- k - 向上
- l - 向右
- d - 选中一段文字后按 “d” 进行剪切
- dd - 剪切一行(带行末的换行符)
- D - 剪切一行(不带行末的换行符)
- y - 选中一段文字后按 “y” 进行复制
- yy/Y - 复制一行(带行末的换行符)
敲代码实用命令
- >> - 适光标所在行(或选中的多行)增加一个 tab 的缩进
- << - 适光标所在行(或选中的多行)减少一个 tab 的缩进
- { - 跳转到上一个空行
- { - 跳转到下一个空行
- [[ - 跳转到所有文本的顶部
- ]] - 跳转到所有文本的底部
注:一个整数 (n) + 以上任何一条指令,能使指令重复运行 n 次
如:3x - 能够删除光标后的三个字符
实用技巧
先 [[ 跳转到文首,然后 V 进入可视模式(–VISUAL–),然后 ]] 到文末选中全部,按一下 “=” 就会发现代码自动格式化了,小心不喜欢
补救方法就是看看上面的文章按 u 就可以撤回辣
冒号命令
- :q - 退出编辑器
- :q! - 强制退出编辑器,不保存以更改内容
- :w - 保存
- :wq - 保存并退出
- :x - 保存并退出
- :%s/<字符串a>/<字符串b>/g - 将整个文件中的 "字符串a" 更换为 "字符串b"字符串b>字符串a>
- :s/<字符串a>/<字符串b>/g - 将光标所在行的 "字符串a" 更换为 "字符串b"字符串b>字符串a>
斜杠命令
- /<字符串> - 在文件中匹配字符串的位置
字符串>
- 按 “n” 可以查找下一个
- 按 “N” 可以查找上一个
vim 的命令我这里只放出来了几个我个人写程序的时候经常用的,vim 的功能当然不限于此,更多的功能可以期待猹后期的补充哟~关于猹的更多小秘密点击页面最下面的链接看看叭~
参考文章:
Linux命令:修改文件权限命令chmod、chgrp、chown详解
Linux上新建用户及赋权操作
Linux如何查看和控制进程
Linux tar解压缩命令详解
linux 远程复制文件或文件夹