Linux简介及最常用命令(简单易学,但能解决95%以上的问题)
版权声明:只为分享、欢迎转载^V^ https://blog.csdn.net/xulong_08/article/details/81463054
Linux是目前应用最广泛的服务器操作系统,基于Unix,开源免费,由于系统的稳定性和安全性,市场占有率很高,几乎成为程序代码运行的最佳系统环境。linux不仅可以长时间的运行我们编写的程序代码,还可以安装在各种计算机硬件设备中,如手机、路由器等,Android程序最底层就是运行在linux系统上的。
一、linux的目录结构
- bin (binaries)存放二进制可执行文件
- sbin (super user binaries)存放二进制可执行文件,只有root才能访问
- etc (etcetera)存放系统配置文件
- usr (unix shared resources)用于存放共享的系统资源
- home 存放用户文件的根目录
- root 超级用户目录
- dev (devices)用于存放设备文件
- lib (library)存放跟文件系统中的程序运行所需要的共享库及内核模块
- mnt (mount)系统管理员安装临时文件系统的安装点
- boot 存放用于系统引导时使用的各种文件
- tmp (temporary)用于存放各种临时文件
- var (variable)用于存放运行时需要改变数据的文件
二、linux常用命令
- 命令格式:命令 -选项 参数 (选项和参数可以为空)
- 如:ls -la /usr
2.1 操作文件及目录
命令 | 参数 | 示例 | 说明 |
cd | cd /home | 切换目录 | |
pwd | pwd | 显示当前工作目录目录 | |
touch | touch 1.txt | 创建空文件 | |
mkdir | mkdir testdir | 创建一个新目录 | |
-p | mkidr -p dir1/dir2/dir3/ | 创建多级目录,父目录不存在情况下先生成父目录 | |
cp | cp 1.txt | 复制文件或目录 | |
-r | cp -r dir1/ | 递归处理,将指定目录下的文件与子目录一并拷贝 | |
mv | mv dir1 dir2 | 移动文件或目录、文件或目录改名 | |
rm | rm 1.txt | 删除文件 | |
-r -f |
rm -rf dir1 |
r同时删除该目录下的所有文件, f强制删除文件或目录 |
|
rmdir | rmdir dir1 | 删除空目录 | |
cat | cat 1.txt | 显示文本文件内容 | |
more | more 1.txt |
分页显示文本文件内容,可前后翻页,空格向后,b向前 |
|
less | less 1.txt |
分页显示文本文件内容,可前后翻页,空格向后,b向前,支持底行模式(后面介绍) |
|
head | head 1.txt | 查看文本开头部分,默认十行 | |
-[num] | head -20 1.txt | 查看文本开头部分指定行数 | |
tail | tail 1.txt | 查看文本结尾部分,默认十行 | |
-[num] | tail -20 1.txt | 查看文本结尾部分指定行数 | |
-f | tail -f 1.txt | 循环滚动读取文件并动态显示在屏幕上,根据文件属性追踪 | |
-F | tail -F 1.txt | 循环滚动读取文件并动态显示在屏幕上,文件文件名追踪 | |
wc | wc 1.txt |
统计文本的行数、字数、字符数 |
|
-m |
wc -m 1.txt | 字符数 | |
-w | wc -w 1.txt | 文本字数 | |
-l | wc -l 1.txt | 文本行数 | |
find | -name | find / -name 1.txt | 在文件系统中的指定目录下查找指定的文件 |
grep | grep aaa 1.txt | 在指定文件中查找包含指定内容的行,例:在1.txt中查找包含aaa的所有行 | |
ln | ln 1.txt 1_bak.txt | 建立链接文件, | |
-s |
ln -s 1.txt 1_bak.txt | 对源文件建立符号连接,而非硬连接 |
2.2 系统常用命令
命令 | 参数 | 示例 | 说明 |
top | top |
显示当前系统中耗费资源最多的进程 |
|
date | date | 显示系统当前时间 | |
ps | 较少单独使用,配参数根据需求,ps -ef 或者ps-aux | ||
-e /-A | ps -e |
显示所有进程,环境变量 |
|
-f | ps -ef | 全格式显示 | |
-a | ps -a |
显示所有用户的所有进程(包括其它用户) |
|
-u | ps -au |
按用户名和启动时间的顺序来显示进程 |
|
-x | ps -aux | 显示无控制终端的进程 | |
kill | -9 | kill -9 pid | 强制杀死一个进程 |
df | df | 显示文件系统磁盘空间的使用情况 | |
-h | df -h | 以人类可读的方式显示,Kb,Mb,GB等 | |
du |
显示指定的目录及其子目录已使用的磁盘空间的总和 |
||
-s | du -s * | 进显示指定目录的总和,*当前目录下表示所有 | |
-h | du -sh * | 以人类可读的方式显示,Kb,Mb,GB等 | |
free | free | 显示当前内存和交换空间的使用情况 | |
ifconfig | ifconfig | 网卡网络配置,常用于查看当前IP地址 | |
ifconfig eth0 192.168.12.22 | 临时修改系统IP(重启后失效) | ||
ping | ping baidu.com | 测试网络的连通性 | |
hostname | hostname | 查看主机名 | |
shutdown | -r | shutdown -r | 先关机,再重启 |
-h | shutdown -h | 关机后不重启 | |
halt | halt |
关机后关闭电源,相当于shutdown -h |
|
reboot | reboot |
重新启动 相当于shutdown -r |
2.3 压缩解压缩
命令 | 参数 | 示例 | 说明 |
gzip | gzip 1.txt | 压缩后面的文件或者文件夹 | |
-d | gzip -d 1.txt.gz | 解压后面的压缩文件 | |
-[num] | gzip -9 1.txt |
用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩方法(高压缩比)。系统缺省值为6 |
|
tar | -c | tar -cvf 1.tar 1.txt | 建立一个压缩文件的参数指令,例,将1.txt压缩为1.tar,也可指定多个文件或文件夹 |
-x | tar -xvf 1.tar 1.txt | 解开一个压缩文件的参数指令 | |
-z |
tar -zcvf 1.tar.gz 1.txt tar -zxvf 1.tar.gz 1.txt |
是否需要用 gzip ,使用gzip压缩或解压 | |
-v | 压缩的过程中显示文件 | ||
-f | 使用档名,在 f 之后要立即接档名 |
2.4 文件权限操作
- linux文件权限的描述格式解读
-
- r 可读权限,w可写权限,x可执行权限(也可以用二进制表示 111 110 100 --> 764)
- 第1位:文件类型(d 目录,- 普通文件,l 链接文件)
- 第2-4位:所属用户权限,用u(user)表示
- 第5-7位:所属组权限,用g(group)表示
- 第8-10位:其他用户权限,用o(other)表示
- 第2-10位:表示所有的权限,用a(all)表示
- r 可读权限,w可写权限,x可执行权限(也可以用二进制表示 111 110 100 --> 764)
命令 | 参数 | 实例 | 说明 |
chmod | chmod u+r 1.txt |
修改文件或目录的权限 u表示当前用户,g表示同组用户,o表示其他用户,a表示所有用户 r表示可读,w表示可写,x表示可执行 例:修改1.txt文件给当前用户添加可执行权限 |
|
-R | chmod -R u+r dir1 | 修改指定目录及其子目录的所有文件的权限 | |
三位数字 | chmod 764 1.sh |
直接指定文件的权限 7:表示可读可写可执行,4+2+1 6:表示可读可写,4+2 ... |
|
chown | chown user1:group1 1.txt |
修改文件的所属用户和组 例:将1.txt文件的所属用户指定为user1,组为group1 |
|
-R | chown -R user1:group1 1.txt |
修改目录下所有文件及子目录的所属用户和组 用数字来表示权限(r=4,w=2,x=1,-=0) |
三、linux系统常用快捷键及符号命令
命令 | 参数 | 实例 | 说明 |
ctrl + c | 停止进程 | ||
ctrl + l | 清屏 | ||
ctrl + r | 搜索历史命令 | ||
ctrl + q | 退出 | ||
tab | 自动补全 | ||
> | echo "haha" > 1.txt |
将前一条命令的输出,写入到后面的文本中 将文本清空,然后写入 |
|
>> | echo "lala" >> 1.txt |
将前一条命令的输出,写入到后面的 文本中 不清空文本,追加到文本最后 |
|
| | cat 1.txt | grep 'hello' |
管道命令,以前一个命令的输出作为输入,然后进行运算 例:打印1.txt中带有hello字符串的行 |
|
* | 通配符,指所有 |
四、vim编辑器
vi / vim是Linux上最常用的文本编辑器而且功能非常强大。只有命令,没有菜单,下图表示vi命令的各种模式的切换图。
4.1 修改文本
i |
在光标前插入 |
I |
在光标当前行开始插入 |
a |
在光标后插入 |
A |
在光标当前行末尾插入 |
o |
在光标当前行的下一行插入新行 |
O |
在光标当前行的上一行插入新行 |
:wq | 保存并退出 |
4.2 定位命令
:set nu | 显示行号 |
:set nonu | 取消行号 |
gg | 跳到首行 |
G | 跳到末行 |
:n | 跳到第n行 |
4.3 替换和取消命令
u | undo,取消上一步操作 |
Ctrl + r |
redo,返回到undo之前 |
r |
替换光标所在处的字符 |
R |
从光标所在处开始替换,按Esc键结束 |
4.3删除命令
x | 删除光标所在处字符 |
nx | 删除光标所在处后的n个字符 |
dd | 删除光标所在行。ndd删除n行 |
dG | 删除光标所在行到末尾行的所以内容 |
D | 删除光标所在处到行尾的内容 |
:5,7d | 删除指定范围的行 |
4.4 常用快捷键
Shift+ zz | 保存退出,与“:wq”作用相同 |
v | 进入字符可视模式 |
V | 进入行可视模式 |
Ctrl + v | 进入块可视模式 |
Linux简介及最常用命令(简单易学,但能解决95%以上的问题)的更多相关文章
- Linux基础 - 系统优化及常用命令
目录 Linux基础系统优化及常用命令 Linux基础系统优化 网卡配置文件详解 ifup,ifdown命令 ifconfig命令 ifup,ifdown命令 ip命令 用户管理与文件权限篇 创建普通 ...
- Linux基础系统优化及常用命令
# Linux基础系统优化及常用命令 [TOC] ## Linux基础系统优化 Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. - ...
- Linux文件管理和编辑常用命令
Linux文件管理和编辑常用命令 mkdir 命令 功能说明 mkdir 命令用于创建一个目录,mkdir是make directory的缩写 格式: mkdir [选项] 目录名 mkdir 命令的 ...
- Linux系统管理和维护常用命令
Linux系统管理和维护常用命令 ls 命令 功能说明 ls 命令显示指定工作目录下的内容,列出工作目录所包含的文件及子目录. 语法结构: ls [选项] [路径或文件] ls 选项及说明 -a 显示 ...
- [转帖]「日常小记」linux中强大且常用命令:find、grep
「日常小记」linux中强大且常用命令:find.grep https://zhuanlan.zhihu.com/p/74379265 在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍 ...
- Linux 文件夹相关常用命令
Linux 文件夹相关常用命令 查看 ls -la -l 列出详细信息 -a 列出全部,包括.和.. 删除 rm <folder> -rf -r 就是向下递归,不管有多少级目录,一并删 ...
- Linux课程---4、Linux目录结构及常用命令(目录结构)
Linux课程---4.Linux目录结构及常用命令(目录结构) 一.总结 一句话总结: 家目录:./root:root用户的家目录 能执行的程序:./bin:所有用户都能执行的程序:./sbin:只 ...
- linux常用命令简单介绍(netstat,awk,top,tail,head,less,more,cat,nl)
1.netstat netstat -tnl | grep 443 (查看443端口是否被占用) root用户,用netstat -pnl | grep 443 (还可显示出占用本机443端口的进程P ...
- Linux常用命令简单总结
Liunx常用命令 1. 文件及目录管理 1.1. ls:显示目录 参数及说明 空:补显示隐含文件 -a:显示所有文件 -l:显示详细列表 1.2. chgrp:设置文件组(root权限) 用法示例 ...
随机推荐
- mac os idea的快捷键
全局搜索:shift+command+f 搜索类:command+o 光标向前向后移动:command+option+(左/右) 删除一行: command+delete
- 报表在IBM AIX系统下resin部署
报表是用java开发的,具有良好的跨平台性.不仅可以应用在windows.linux.操作系统,还可以应用在AIX等等的unix操作系统.在各种操作系统上部署过程有一些差别.下面说一下在AIX操 ...
- Vue 框架-08-基础实战 demo
Vue 框架-08-基础实战 demo 前面介绍了有 7 篇了,都是小实例,没有相对完整的应用,虽然有些功能挺实用,但还是有的不常用的,今天记录一篇关于前几篇基础内容的实战 demo,也是对 Vue ...
- 带你从零学ReactNative开发跨平台App开发(四)
ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...
- Angularjs controller之间的通信
刚刚看了网上的一些关于控制器之间的通信:然后结合自己项目做了一些,这里主要做的是二个同级之间的controller通信. Html: <html> <script src=" ...
- winform listbox增加鼠标双击事件
在Form.Designer.cs文件中对于listBox处理: listBox.MouseDoubleClick += new system.Windows.Forms.MouseEventHand ...
- LeetCode题解之Multiply Strings
1.题目描述 2.问题分析 按照手算乘法的过程进行计算,首先计算乘法,然后计算加法. 3.代码 string multiply(string num1, string num2) { string s ...
- JQuery-学习。
jQuery是一套跨浏览器的JavaScript库,简化HTML与JavaScript之间的操作.由约翰·雷西格(John Resig)在2006年1月的BarCamp NYC上发布第一个版本.目前是 ...
- JAVA 判断字符长度
/** * 判断姓名字符长度 * 字符串为空返回0:有中文返回中文字符数:无中文返回2 * @param CustomerSn * @return */ private Integer getName ...
- Oracle EBS 跳跳转标准销售订单程序转标准销售订单程序
-- 打开PO PROCEDURE Btn_Open_Po IS BEGIN Fnd_Function.Execute(Function_Name => 'PO_POXPOEPO', Open_ ...