linux基础命令归纳(可读性高,易上手)
创作不易,如果以下内容对你有帮助,别忘了点一个赞,让更多的小伙伴能看到吧~~
一、常用目录/文件操作命令
1.展示目录列表命令ls (list)
ls 展示当前目录下的可见文件ls -a 展示当前目录下所有的文件(包括隐藏的文件)ls -l(ll) 展示当前目录下文件的详细信息ll -a 展示当前目录下所有文件的详细信息ll -h 友好的显示当前目录下文件的详细信息(文件的大小可读性更强了)
2.切换目录命令cd(change directory)
cd test 切换到test目录下cd .. 切换到上一级目录cd / 切换到系统根目录下cd ~ 切换到当前用户的根目录下cd - 切换到上一级所在的目录
3.目录的创建(mkdir)和删除(rmdir)命令
mkdir test 在当前目录下创建一个test目录mkdir -p test/a/b 在test目录下的a目录下创建一个b目录,如果上一级目录不存在,则连它的父目录一起创建rmdir test 删除当前目录下的test目录(注意:该命令只能够删除空目录,如果想删除非空目录,rm -r test 删除)
4.文件的创建(touch)和删除(rm)命令
touch test.txt 在当前目录下创建一个test.txt文件touch ~/Desktop/test.txt 在~/Desktop目录下创建test.txt文件rm test.txt 删除test.txt的文件(带询问的删除,需输入y才能删除)rm -f test.txt 强制删除text.txt文件rm -r test 递归删除,即删除test目录以及其目录下的子目录(带询问的删除)rm -rf test 直接删除test目录以及其目录下的子目录
5. 文件复制(cp) 和文件移动、重命名(mv)
cp test1/a.txt(源文件路径) test2/b.txt(复制目标路径) 将a.txt文件复制到test2目录下的b.txt文件cp -r test1 test2 将目录test1复制到test2-r:递归持续复制,用於目录的复制行为;(常用)mv test1/a(源文件路径) test2/b(移动目标路径) 将a文件移动到test2目录下的b文件mv a.txt b.txt 给a.txt重命名为b.txt
6.文件打包或解压命令tar
- 说明: Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。
压缩:
tar -zcvf tar zcvf FileName.tar.gz(压缩后的文件名) DirName(要打包压缩的文件)z:调用gzip压缩命令进行压缩c:打包文件v:显示运行过程f:指定文件名
解压:
tar zxvf FileName.tar.gz(解压文件名)z:调用gzip压缩命令进行压缩x:解压文件v:显示运行过程f:指定文件名
二、命令执行/基本的文件管理
1. 格式化输出时间(date)
时间(date)
date 显示当前日期(包括年月日、时分秒、星期)date +%Y/%m/%d 格式化输出年月日(以指定的/链接)%S:秒,取值为00-59%M:分钟,取值为00-59%H:小时,取值为00-23%d:月中的某天,取值为01-31%m:一年中的某月,取值为01-12%y:一个世纪中的某年,取值为0-99%Y:年,其格式为ccyy(4个数字)%D:以格式%m%d%y表示的日期%T:时间,格式为%H:%M:%S
日历(calendar)
cal 查看当前月份的日历cal -y 查看一年中的日历
2. 开关机命令/切换身份(su)
shutdown –h now 立刻进行关机shutdown –r now 现在重新启动计算机su - 切换root用户权限su - m 切换到root用户且保持在切换前的目录passwd 修改用户密码logout 用户注销
3. 常见的热键与操作技巧
- 【Tab】键:,命令自动补全,也可以文件名补全,变量补全
- 【Ctrc】+【C】 :中断一个运行的命令
- 【Shift】+【PageUP】,【Shift】+【PageDown】:上下移动屏幕界面
- 命令 --help 查看命令用法详情,如 ls --help
4. 管道命令
- 说明: “|” 表示 将前一个命令输出的结果作为后面的命令的输入来处理
ll /etc/ | grep 'passwd' 在ll /etc命令显示结果中匹配(grep) 'passwd'
5. echo文字/重定向(>和>>)
- echo 会在终端中显示参数指定的文字,通常会和 重定向 联合使用
echo "hello world"终端返回: hello world
- Linux 允许将命令执行结果 重定向到一个 文件
将本应显示在终端上的内容 输出/追加 到指定文件中
其中- “>” 表示输出,会覆盖文件原有的内容
- “>>” 表示追加,会将内容追加到已有文件的末尾
echo "print('hello world')" > 01.py 将 "print('hello world')"覆盖01.py文件原有内容
echo "print('hello world')" >> 01.py 将 "print('hello world')"追加到01.py文件末尾
6. linux文件查看
cat 由第一行开始显示文件内容nl 显示的时候,顺道输出行号more 一页一页的显示文件内容,小写q退出less 与more类似,但是比more更好的是,他可以往前翻页head 只看头几行tail 只看尾巴几行
7. 远程操作
说明:
- ssh协议: 安全外壳SSH(Secure Shell)协议由 IETF网络工作小组所制定,是使用在传输层和应用层的安全协议。是应用于远程登录及其他网络服务的安全性协议
ssh 用户名@IP地址 -p 端口号(端口号可省略) 远程连接服务器scp ~/Desktop/01.py username@IP地址:/Demo 将 ~/Desktop/目录下的01.py文件远程复制到指定的服务器的某个目录下scp -r ~/Desktop/demo username@IP地址:/Demo 将 ~/Desktop/demo目录下的所有文件都复制到指定服务器的某个目录下
8.其他实用命令
passwd说明:
- /etc/passwd 是用于保存用户信息的文件
- /usr/bin/passwd 是用于修改用户密码的程序
- which 命令可以查看执行命令所在位置
bin和sbin说明
- 在 Linux 中,绝大多数可执行文件都是保存在 /bin 、 /sbin 、 /usr/bin 、 /usr/sbin
- /bin ( binary )是二进制执行文件目录,主要用于具体应用
- /sbin ( system binary )是系统管理员专用的二进制代码存放目录,主要用于系统管理
- /usr/bin ( user commands for applications )后期安装的一些软件
- /usr/sbin ( super user commands for applications )超级用户的一些管理程序
查看命令所在位置
which ls 查看ls命令所在位置终端返回: /bin/lswhich userdel终端返回: /usr/sbin/userdel
查看当前用户名
whoami 查看当前登录的用户名
查看配置网卡信息
- 说明:ping 一般用于检测当前计算机到目标计算机之间的网络 是否通畅,数值越大,速度越慢
ifconfig 查看网卡配置信息ifconfig | grep inet 查看网卡对应的 IP 地址ping 127.0.0.1 检测本地网卡工作正常ping www.baidu.com 通过跟服务器通信,查看是否联网和网速
三、Linux文件权限与账号管理
1. 文件权限
说明:
linux的文件权限主要依据三种身份来确认
- user/owner(用户/所有者): 文件的所属人
- group(群组) : 这个文件附属于某一个群组的人
- others(其他人) :不是user(用户)也没加入group(群组)的账号,就是others(其他人)
文件权限查看(ll -a)
.
- -rw-rw-r-- 其中
- 首位的-表示此为文件,并非文件夹
rw- 表示 文件的user权限可读可写不可执行
rw- 表示 group权限可读可写不可执
r-- 表示others权限可读不可写不可执行 - 第一个leadingme表示该文件的user/owner(用户/所有者), 第二个leadingme表示该文件的 group(群组)
- 42表示该文件大小为42字节
- 4月 8 09:59 为文件创建日期
修改文件所有者(chown)
sudo chown ubuntu 01.py 修改01.py的所有者为ubuntu命令返回值:-rw-rw-r-- 1 ubuntu leadingme 42 4月 8 09:59 01.py
修改文件拥有的组(chgrp)
sudo chgrp ubuntu 01.py 修改01.py的拥有的组为ubuntu命令返回值:-rw-rw-r-- 1 ubuntu ubuntu 42 4月 8 09:59 01.py
修改文件操作权限(chomd搭配数字法)
- 说明:
r => read => 2^2 => 4 可读对应数字4
w => write => 2^1 => 2 可写对应数字2
x => eXecute => 2^0 => 1 可执行对应数字1 - 结论:
rwx 可用数字表示为 7
r-- 可用数字表示为 4
…
sudo chmod 775 01.py 修改01.py 权限为775(rwxrwxr-x)命令返回值:-rwxrwxr-x 1 ubuntu ubuntu 42 4月 8 09:59 01.py
2.账号管理
用户管理
useradd -g usergroup -m username 创建一个用户useradd -G progroup username - g 用来指定创建用户拥有的主组(主组只能有一个)- G 用来添加辅助组(可以添加多个)- m 指定用户的登录目录,如果不写则无登录目录usermod -G groupname username 将username用户添加到groupname组中usermod -s bash username 修改用户的shell sudo passwd username 修改某个用户的密码userdel -r username 删除指定用户- r 递归删除该用户的登录目录id username 查看用户的用户名(编号),组名(编号)
群组管理
groupadd groupname 创建一个群组grep groupname /etc/group 查看指定的组名是否存在,/etc/gropu存放系统所有的组名grep groupname /etc/passwd 查看所有用户的信息
四、进程管理
1. 查看进程
说明:
F (flag): 代表进程的摘要标志,常见的是4,代表root .
S (stat):状态栏,主要的分类项有下面几种
- R(running):该进程正在运行
- S(stop):该进程当前正在睡眠状态,但可以被唤醒
- D:不可被唤醒睡眠状态,通常这个进程可能在等待I/O,例如打印
- T:停止状态(stop),可能是在工作控制(后台暂停)
- Z(Zombie): 僵尸状态,进程已经结束却无法从内存中移出
UID/PID/PPID:代表“此进程被该PID所拥有/进程的PID号码/此程序的父进程PID号码”
C:代表CPU使用率,单位为百分比
PRI/NI:表示该进程被CPU所执行的优先级,数值越小,越快被CPU执行
ADDR/SZ/WCHAN: 指出该进程在内存的哪一部分
TTY:登陆者的终端位置,若为远程登录则使用动态终端接口(pts/n)
TIME: 使用CPU的时间,注意,是此进程实际花费的CPU时间,而不是系统时间
CMD(command):触发次进程的命令
ps -l 查看当前的bash界面的相关进程(也称前台级进程)pstree -a 以关联树的方式展示全部进程的信息及相关联系ps -aux 查看系统中的进程信息全部输出,常用的命令top 动态查看进程,每5秒更新一次
2. 终止进程
kill 进程的UID码 终止该进程kill -9 进程的UID码 强制终止该进程
五、文件系统基本管理
1. 软连接和硬连接(ln)
说明:
- ln命令主要用途:将一个文件或目录在同一个文件系统或者另一个不同的文件系统的某个位置建立一个链接,类似windows系统中的超链接,这样当我们在链接处访问被链接的目录或文件时就可以通过此链接来访问,不必要再进入要访问的文件系统中。
- 建立链接有两种:硬链接和软链接
- 在linux中文件名和文件数据是分开存储的,文件名存储的是文件数据的引用(地址),通常通过文件名访问文件数据
- 软链接: 创建一个软连接,软连接名存储软链接数据(也就是指向文件名的路径),通过此方式间接访问文件数据。当文件名删除时,软链接失效
- 硬链接: 创建一个硬链接,硬链接相当于给文件数据取了一个别名,等同于原来的文件名。如果删除文件名,硬链接并不失效,只要有至少一个文件名指向文件数据,其数据所在磁盘空间不会释放
sudo ln -s ~/Desktop/01.py Desktop/03.py 给~/Desktop/01.py(绝对路径) 创建一个软链接,软链接名为03.pysudo ln -d ~/Desktop/01.py Desktop/03.py 给~/Desktop/01.py(绝对路径) 创建一个硬链接,硬链接名为03.py
2. 文件系统的挂载
mkdir /srv/linux /srv/win 创建两个目录mount /dev/sda4 /srv/linux 将/dev/sda4系统文件挂载到/srv/linuxmount /dev/sda5 /srv/win 将/dev/sda4系统文件挂载到/srv/win df 查看系统的挂载点及可用的存储空间等
六、vim的基本操作
1. 常用模式
命令模式
插入模式
末行模式
可视化模式,命令模式按v进入
替换模式,命令模式下按r进入
2. 插入模式
- 默认进入文件打开的是命令模式,在这个模式下是不能插入字符的
- 在命令模式下,按"i"键,会切换到插入模式,然后可以编辑文件
- 当编辑完文件后,按"Esc"键又回到命令模式
3. 命令模式
特殊字符
- “$” 光标移动到一行的最后
- “^” 光标移动到一行的最前
- “&” 在一行中括号两端切换
- “#” 上向切换行
- “:” 切换末行模式
常规字母
- “x” 删除光标处的字符
- “u” 恢复上一个操作的命令,相当于撤销;
- “yw” 复制光标处的单词
- “yl” 复制光标处的字母
- “yy” 复制一整行
- “p” 粘贴到光标处
- “cw” 剪切一个单词
- “cl” 剪切一个字母
- “cc” 剪切一整行
- “dw” 删除一个单词
- “dl” 删除一个字母
- “dd” 删除一整行- “i” 在光标处插入字符
特殊字母
- “I” 光标所在行的行首插入字符
- “o” 光标所在行的下一行新行插入字符
- “O” 光标所在行的上以行新行插入
- “s” 删除光标所在字符并插入字符
- “S” 删除光标所在行并插入字符
- “a” 光标所在字符的下一个字符插入
- “A” 光标所在行的行尾插入字符
- “gg” 光标移动到首行
- “G” 光标移动到尾行
4. 末行模式
- 在命令行模式下,按":"进入末行模式
- :q 就是退出
- :wq 保存并退出,通常连用,等同与:x
- :q! 强制退出不保存
- :wq! 强制保存退出,首先要你有足够的限权
- :sp filename 在vim窗口上半部分打开另一个文件,(同时编辑两个文件)
- ctrl +w 然后按下,就切换到下半文件窗口
- ctrl +w 然后按上,就切换到上半文件窗口
5.可视化模式
说明:
为了便于选取文本,VIM 引入了可视(Visual)模式。 要选取一段文本,首先将光标移到段首,在普通模式下按 v 进入可视模式,然后把光标移到段末。 需要注意,光标所在字符是包含在选区中的
v 进入字符可视化模式
V 进入行可视化模式
Ctrl+v 进入块可视化模式
用 v 命令进入的字符可视化模式(Characterwise visual mode)。文本选择是以字符为单位的。
用 V 命令进入的行可视化模式(Linewise visual mode)。文本选择是以行为单位的。
用 ctrl-V 进入的块可视化模式(Blockwise visual mode)。可以选择一个矩形内的文本。
七、g++的使用(补充)
1. 预处理
- 主要进行宏替换,编译命令为
gcc -E hello.c -o hello.i
2. 编译
- 编译原理旨在介绍编译程序构造的一般原理和基本方法。内容包括语言和文法、词法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码生成。将所有的源代码指令一次性成翻目标代码并执行
gcc -S hello.i -o hello.s
3. 汇编
- 汇编过程就是把汇编指令一对一地翻译成01机器码的过程。而采用这种处理方式的语言只有一类:汇编语言。
gcc -c hello.s -o hello.o
4. 链接
- 生成目标文件
gcc hello.o mymath.o -o hello
5. 执行
./hello
参考文章
linux 远程文件拷贝
如何使用SSH登录远程服务器
Linux中vim命令
GCC编译和链接过程
linux基础命令归纳(可读性高,易上手)相关推荐
- Linux基础命令-进程与系统性能
Linux基础命令-进程与系统性能 进程与系统性能 一.进程相关概念 1.进程概念 2.进程的基本状态和转换 3.IPC进程间通信 4.进程优先级 5.进程状态 二.进程与系统性能 1.系统管理工具 ...
- 干货!一篇文章集合所有Linux基础命令,适合所有菜鸟学习和老手回顾!
阿里云 干货!一篇文章集合所有Linux基础命令,适合所有菜鸟学习和老手回顾! 1 文件{ ls -rtl # 按时间倒叙列出所有目录和文件 ll -rt touch file # 创建空白文件 ...
- Linux 基础命令快速入门
Linux 基础命令快速入门: 目录 Linux 基础命令快速入门: 1.vim 命令记录 2.开机.重启和用户登录注销 3.用户管理 4.用户组相关 5.用户信息文件 6.实用指令 7.帮助指令 8 ...
- linux基础命令学习笔记(二)
linux基础命令学习笔记(二) 1.kill :终止进程 kill pid (唯一标示一个进程) kill -9 强制终止 kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...
- Linux基础命令与进阶
目录标题 Linux基础命令与进阶 关机命令 Linux 用户/用户组 1.增加一个用户组 2.删除一个用户组 3.修改用户组的属性 4.添加用户账号 5.删除帐号 6.修改帐号 7.用户口令的管理 ...
- 百战RHCE(第一战:Linux基础命令1)
哈喽哈喽哈喽,大家好啊,很高兴大家能看到这篇文章! 首先,本人目前是计算机专业的大一学生,基于对Linux操作系统的爱好,参与了RHCE的培训班,而我这次编写的 <百战RHCE>文章,是基 ...
- linux复制后权限变化,学霸Linux基础命令吐血总结,给你当新华字典用
Linux基础命令学习笔记 一.登录Linux [root@linux~]# root:目前使用者账户 @之后接的内容:主机名称 root为管理员账户 #:提示字元(对于root账户) $:提示字元( ...
- linux基础命令与文件系统(ip a、ls、cat、vim、cd、pwd、hostname、date、reboot、poweroff、echo、touch、rm、mkdir、diff、file)
目录 一.Linux命令提示符 二.linux基础命令 1.ip a命令 2.ls 命令 3.cat 查看文件命令 4.vim编辑命令 5.cd 命令 6.pwd 命令 7.hostname 命令 8 ...
- Linux基础命令-tar打包压缩文件
Linux基础命令-echo输出信息_Linux学习中的博客-CSDN博客 Linux三剑客-grep命令_Linux学习中的博客-CSDN博客 Linux文件管理命令(3)-mv改动文件_Linux ...
最新文章
- 解决DataList控件无缝滚动图片(转)
- 吉林大学c语言考试题库,吉林大学C语言题库.docx
- 【Get 以太坊技能】CentOS 7 Geth安装
- 万能驱动xp离线版_教你用SC封装软件来封装XP系统
- oracle10g异常日志查看
- python字符串垂直输出加循环_将漂亮的soup嵌套循环垂直输出到datafram中
- infor wms 项目启动_派诺科技数字工厂MES/WMS系统项目正式启动
- MAVEN Error: Using platform encoding (GBK actually) to copy filtered resources.....
- mysql开发要注意什么_Mysql日常开发注意要点
- hive启动debug问题
- Web应用程序安全原理(Web服务面临的威胁)
- R语言t检验中手动计算t值和p值
- xshell怎么上传文件
- 数据禾|长江经济带主要城市坡度数据
- 我也说说《变形金刚》2
- Compressor.js 图片压缩及方向修正
- 使用Node.js搭建web服务器
- ios开发学习中遇到问题[LayoutConstraints] Unable to simultaneously satisfy constraints.的解决方法
- (LeetCode)Java 求解正则表达式匹配
- Win10+PL2030HXA或Prolific USB-to-Serial Comm Port驱动错误或者串口无法打开问题
热门文章
- Allure环境部署与生成+Allure内容增强
- 华为交换机vlan间arp代理
- Vim 格式化 xml文件, 进行快捷键映射。
- 信号的解调与调制matlab,基于MATLAB常用数字信号调制与解调
- 使用element-tiptap富文本编辑器lang报错
- 理解Java ClassLoader机制 |用Java说话,人气战胜时间!Come On
- 大数据入门的4个必备常识
- 高等代数_第5章:矩阵的相抵与相似
- 怎么从h3c服务器进去虚拟机,如何用VM虚拟机模拟H3C交换机环境.pdf
- react这几年重大意义的变化