admin 管理员组文章数量: 887021
Linux文件目录含义:
- /:根目录,一般根目录下只存放目录,在Linux下有且只有一个根目录,所有东西都是从这里开始。
- /bin、usr/bin:可执行二进制文件的目录。
- /dev:存放Linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备。
- /boot:放置Linux系统启动时用到的一些文件
- /etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件
- /home:用户“家”目录
- /lib、/usr/lib、/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助。
- /lost+found:系统发生异常错误时,会将一些遗失的片段放置于此。
- /mnt、/media:光盘挂载点,一般光盘都挂载到/mnt/cdrom
- /opt:给主机额外安装软件所摆放的目录。
- /proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态等
- /root:系统管理员root的家目录
- /sbin、/usr/sbin、/usr/local/sbin:放置系统管理员使用的可执行命令,与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能“查看”而不能设置和使用。
- /srv:服务启动之后需要访问的数据目录,如www服务需要访问的网页数据都放在/srv/www内。
- /usr:应用程序存放目录
- /usr/bin:存放应用程序
- /usr/share:存放共享数据
- /usr/lib:程序运行所需的一些函数库文件
- /usr/local:存放软件升级包
- /usr/share/doc:系统说明文件存放目录
- /usr/share/man:程序说明文件存放目录
- /var:放置系统执行过程中经常变化的文件
- /var/log/message:所有的登录文件存放目录
- /var/spool/mail:邮件存放的目录
- /var/run:程序或服务启动后
ctrl+shift+加号:放大终端窗口的字体显示
ctrl+减号:缩小终端窗口的字体显示
ctrl+l(L的小写)/clear:清屏
tab键:自动补齐
Linux命令格式:
command [-options] [patameter]
- command:命令名,相应功能的英文单词或单词的缩写
- [-options]:选项,可用来对命令进行控制,也可以省略
- parameter:传给命令的参数,可以是零个,一个或多个
help:显示command命令的帮助信息,格式为:command --help
man:显示command命令的帮助信息,格式为:man command
使用man时的操作键
- 空格键:显示下一屏
- enter:滚动一行
- b:回滚一屏
- f:前滚一屏
- q:退出man命令
- h:列出所有功能键
- /word :搜索Word字符串
Linux常用命令
ls:查看文件信息,列出目录的内容
常用选项
选项 | 含义 |
-a | 显示指定目录下所有子目录与文件,包括隐藏文件 |
-l | 以列表方式显示文件的详细信息 |
-h | 配合-l以人性化的方式显示文件大小 |
-i | 列出文件的iNode编号,系统自动给每个文件的编号 |
列出的信息含义如下:
- Linux文件或者目录名称最长可以有265个字符,“.”代表当前目录,“..”代表上一级目录。
- 以“.”开头的文件为隐藏文件,需要使用-a参数才能显示。
- 允许使用特殊字符来同时引用多个文件名,这些特殊字符被称为通配符
通配符 | 含义 |
* | 文件,文件名中所有字符 |
te* | 查找te开头的文件 |
*html | html结尾的文件 |
? | 文件名中任意一个字符 |
?.c | 指有三个字符,第一个字符任意,后缀为.c的文件 |
a.? | 只有三个字符,前两个为a.,最后一个字符任意 |
[] | [”和“]”将字符组括起来,表示可以匹配字符组中的任意一个。“-”用于表示字符范围。 |
[abc] | a,b,c中任意一个 |
[a-z] | a-z中任意一个 |
[a-z]* | a-z中任意一个字符开头的 |
\ | 转义 |
touch:创建一个空文件
如果文件存在,就是修改文件时间
cd:切换工作目录
命令 | 含义 |
cd | 切换到当前用户的主目录(/home/用户目录),用户登陆的时候,默认的目录就是用户的主目录。 |
cd ~ | 切换到当前用户的主目录(/home/用户目录) |
cd . | 切换到当前目录. |
cd .. | 切换到上级目录. |
cd - | 可进入上次所在的目录. |
注意:如果路径是从根目录开始的,则路径的前面需要加“/”,如/etc
mkdir:创建目录
通过mkdir命令可以创建一个新的目录。参数-p可递归创建目录。需要注意的是新建目录的名称不能与当前目录中已有的
目录或文件同名,并且目录创建者必须对当前目录具有写权限。
rm删除文件或目录
选项 | 含义 |
-i | 以交互式方式执行 |
-f | 强制删除,忽略不存在的文件,无需提示 |
-r | 递归删除,删除有文件的目录文件时必须加此参数 |
cp:拷贝文件或目录
将给出的文件或目录文件复制到另一个文件或目录文件中。
常用选项:
选项 | 含义 |
-a | 该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有属性。 |
-f | 已经存在的目标文件而不提示,直接覆盖 |
-i | 交互式复制,在覆盖目标文件之前将给出提示要求用户确认. |
-r | 若给出的源文件是目录,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名. |
-v | 显示拷贝进度 |
mv:移动、重命名
选项 | 含义 |
-f | 禁止交互式操作,如有覆盖也不提示 |
-i | 确认交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件. |
-v | 显示进度 |
-b | 如果目录存在,先备份,再移动目录. |
tree:显示指定目录的结构
>/>>:输出重定向
Linux允许将命令执行结果重定向到一个文件,本应显示在终端上的内容保存到指定文件中。
注意:
>输出重定向会覆盖原来的内容,文件不存在,则创建。
>>输出重定向则会追加到文件的尾部。文件不存在,则创建。
cat:查看或合并文件内容
参数 | 含义 |
-n | 输出行号,从1开始 |
-b | 输出行号,从1开始,空白行不编号 |
-s | 当遇到连续连续两行以上空白行,换成一行显示 |
注意:通过配合重定向可合并多个文件内容到一个文件中
more:分屏查看文件内容
和cat功能类似,不过每次显示一页,避免滚屏,按空格显示下一页,按q退出显示,按下h获取帮助。
常用操作命令:
- enter:向下n行,需要定义,默认1行
- ctrl+F:向下滚动一屏
- ctrl+B:返回上一屏
- 空格键:向下滚动一屏
- q:退出more
find:文件查找
通常用来在特定的目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件。
选项 | 含义 |
find ./ -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 777 | 查找当前目录下权限为 777 的文件或目录.并且会递归显示 |
grep:文本内容搜索
允许对文本文件进行模式查找。如果找到匹配模式,grep打印包含模式的所有行。
注意:grep命令输入字符串参数时,最好单引号或双引号括起来。
一般格式:grep [-选项] '搜索内容串' 文件名
常用选项:
选项 | 含义 |
-v | 显示不包含匹配文本的所有行(相当于求反) |
-n | 显示匹配行及行号 |
-i | 忽略大小写 |
注意:
grep搜索内容串可以是正则表达式。
ln:建立链接文件
- 软链接:软链接不占用磁盘空间,源文件删除则软链接失效
- 硬链接:只能链接普通文件,不能链接目录,源文件删除不影响硬链接。 源文件和链接文件占用相同大小的磁盘空间,硬连接无法链接目录文件。
注意:无论是软链接还是硬链接,文件都保持同步变化。
使用格式:
ln 源文件 链接文件------------硬
ln -s 源文件 链接文件-----------软
注意:如果软链接文件和源文件不在同一个目录,源文件要用绝对路径,不能用相对路径。
总结:软链接类似Windows的快捷方式,当删除源文件,那么软链接失效。硬链接可以理解为源文件的一个别名,多个别名所代表的是同一个文件。当rm一个文件的时候,硬链接数减1,当硬链接数为0 的时候,文件删除。
管道:指令1正确输出,作为指令2的输入
格式:指令操作1 | 指令操作2
tar:归档管理
格式: tar [参数] 打包文件名 文件
tar命令很特殊,其选项前面可以使用“-”,也可以不使用。
常用参数:
选项 | 含义 |
-c | 生成档案文件,创建打包文件 |
-v | 列出归档解档的详细过程,显示进度 |
-f(这个参数时必须的) | 指定档案文件名称,f后面一定是tar文件,所以必须放选项列表最后面 |
-t | 列出档案中包含的文件 |
-x | 解开档案文件 |
注意:除了f需要放参数后面,其他参数随意。
gzip文件解压缩
tar只负责打包文件,不负责压缩。tar与gzip命令结合使用实现文件打包、压缩。用gzip压缩tar打包后的文件,其扩展名一般为XXX.tar.gz
命令使用格式:gzip [选项] 被压缩文件
常用选项:
选项 | 含义 |
-d | 解压 |
-r | 压缩所有子目录 |
注意:tar命令中一个参数-z,可以调用gzip实现一个先打包后压缩的过程。
用法:tar zcvf 压缩包名(这里可以是其他目录) 文件1 文件2...(注意这里文件前面不能有/,所以只能在本目录进行处理)
解压用法:
tar zxvf 压缩包名 (在其他目录下的话解压不出来)
bzip2文件解压缩
tar和bzip命令结合使用实现文件打包、压缩(用法和gzip一样)
与tar文件结合,打包后扩展名一般是XXX.tar.bz2
在tar命令中添加参数-j可用调用bzip2实现打包并压缩的过程。
压缩:tar -jcvf 压缩包名(这里可以是其他目录) 文件...(注意这里文件前面不能有/,所以只能在本目录进行处理)
解压:tar -jxvf 压缩包名(在其他目录下的话解压不出来)
zip/unzip文件解压缩
通过zip压缩文件的目录文件不需要指定扩展名,默认扩展名为zip
压缩:zip [-r] 目标文件(没有扩展名) 源文件
解压:unzip 压缩文件或unzip -d 指定目录 zip包
which:查看命令位置
查找并显示给定命令的绝对路径。环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在
环境变量 PATH 设置的目录里查找符合条件的文件。也就是说,使用 which 命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
chmod:修改文件权限
修改文件权限有两种格式:
字母法:
所有者 | 描述 |
u | user表示该文件的所有者 |
g | group表示与该文件的所有者属于同一组着,即用户组 |
o | other表示其他以外的人 |
a | all表示这三者皆是 |
我们使用“+,-,=”来修改权限
【+,-,=】 | 含义 |
+ | 增加权限 |
- | 撤销权限 |
= | 设定权限,其他没有指定的取消权限 |
【rwx】 | 含义 |
r | read表示可读取,对于目录文件,意味着可以通过ls查看目录中内容 |
w | write表示可写入,对于目录,意味着可在目录下创建新文件 |
x | excute表示可执行,对于目录,意味着可通过cd进入目录 |
字母法:chmod [ugoa] [+-] [rwx] 文件
数字法:rwx这些权限可以用数字来代替
字母 | 说明 |
r | 读取权限:数字代号“4” |
w | 写入权限:数字代号“2” |
x | 执行权限,数字代号“1” |
- | 不具任何权限,数字代号0 |
sudo:切换管理员账号
sudo,暂时切换到超级管理员模式以执行超级管理员权限,提示输入密码为当前用户密码,而不是超级管理员密码,不过时间有限制,Ubuntu默认一次为时长15分钟。
sudo -s:从管理员账号切换到超级管理员
passwd:设置用户密码
超级管理员可以指定用户名无需以前密码确认直接修改用户密码,而用户可以用此命令不指定用户名直接修改自己的密码。
exit:退出登录账号
- 如果是图形界面,退出当前终端
- 如果是使用ssh远程登录,退出登录账户
- 如果是切换后的登录用户,退出当前用户,返回到切换前的用户并返回到切换前目录
who:查看登录用户
who命令可用于查看当前所有登录系统的用户信息。
第一列为用户名称,第二列为连接方式;tty为用户直接连接电脑上,pts为远程登录。第三四列为日期时间,第五列为用户登录的ip地址。
lb tty7 2018-07-20 10:21 (:0)
lb pts/19 2018-07-20 10:24 (192.168.77.1)
reboot、shutdown:关机重启
命令 | 含义 |
reboot | 重启 |
shutdown -r now | 重启,多用户同时登录时,给别的用户提示 |
shutdown -h now | 立刻关机,now相当于时间为0的状态 |
shutdown -h 23:00 | 系统在今天23:00会关机 |
shutdown -h +10 | 系统再过十分钟自动关机 |
Linux软件安装与卸载
- 通过apt-get包管理器从软件源中安装
- 通过deb格式的软件包安装
- centos:.rpm rpm -ivh *.rpm
- .deb dpkg -i *.deb
- 从软件源码手动编译安装
Ubuntu软件操作的相关命令
- sudo apt-get update 更新源
- sudo apt-get install package 安装包
- sudo apt-get remove package 删除包
- sudo apt-cache search package 搜索软件包
- sudo apt-cache show package 获取包的相关信息,如说明、大小、版本等
- sudo apt-get install package --reinstall 重新安装包
- sudo apt-get -f install 修复安装
- sudo apt-get remove package --purge 删除包,包括配置文件等
- sudo apt-get build-dep package 安装相关的编译环境
- sudo apt-get upgrade 更新已安装的包
- sudo apt-get dist-upgrade 升级系统
- sudo apt-cache depends package 了解使用该包依赖那些包
- sudo apt-cache rdepends package 查看该包被哪些包依赖
- sudo apt-get source package 下载该包的源代码
- sudo apt-get clean && sudo apt-get autoclean 清理无用的包
- sudo apt-get check 检查是否有损坏的依赖
切换软件源:
- 手动修改`/etc/apt/source.list`文件,然后需要在命令行中执行`sudo apt-get update`执行更新
- 图形界面修改,ubuntu下依次操作“系统设置-->软件和更新-->下载自”选择阿里云,163,清华等源,然后关闭的时候会自动更新
ssh使用
- 安装ssh服务
- sudo apt-get install openssh-server
- 安装了ssh客户端的终端登录,windows,linux,mc均可
- ssh 用户名@ip
- 其他软件辅助,xshell,MobaXterm,putty等
文件上传与下载
远程拷贝文件,scp -r的常用方法
- 使用该命令的前提条件要求目标主机已经成功安装openssh-server,以及当前系统已经安装ssh客户端程序
- 使用格式
- scp -r ⽬标⽤⼾名@⽬标主机IP地址:/⽬标⽂件的绝对路径 /保存到本机的绝对/相对路径
在后续会提⽰输⼊“yes”此时,只能输“yes”⽽不能简单输⼊“Y”
注意:拷贝单个文件不需要加-r
远程上传
scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolder
scp -r FolderName RemoteHostIp:RemoteFolder
举例:
scp -r demo lb@192.168.77.128:/home/lb/文档/demo
远程下载
scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderName
举例:
scp -r lb@192.168.77.128:/home/lb/Demo2 C:/Demo
vim
vim的三种基本工作模式:命令模式,文本输入模式,末行模式
进入编辑模式
命令 | 含义 |
i和I | i在光标前插入,I在行首插入 |
a和A | a在光标后插入(光标会后退一位然后在前面插入,相当于在原光标后插入),A在行末插入 |
o和O | o在光标所在行下一行插入,O在光标所在行上一行插入 |
移动光标
命令 | 含义 |
h | 光标向左移动 |
j | 向下 |
k | 向上 |
l | 向右 |
H、M、L | 整屏首行(H),中间行(M),最后一行(L) |
^和$ | ^移动到行首,$移动到行末 |
G和gg | G文档最后一行,gg文档第一行 |
ctrl+f\ctrl+b | 向前翻屏,返回翻屏 |
ctrl+d | 向前半屛 |
ctrl+u | 返回半屛 |
{ | 向上移动一段 |
} | 向后移动一段 |
w、W | 向前移动一个单词 |
b | 向后移动一个单词 |
删除命令
命令 | 含义 |
X和x | x删除光标所在一个字符,X删除光标前一个字符 |
dd和ndd | dd剪切所在行,ndd剪切指定行数 |
d0和D | d0删除本行光标前所有内容,D删除光标及后面本行所有内容,,包含光标位置字符 |
dw | 删除光标所在处到下一个空格处(包括空格)的文本 |
撤销命令
命令 | 含义 |
ctrl+r | 翻撤销 |
u | 撤销 |
复制粘贴命令
命令 | 含义 |
yy | 复制当前行 |
nyy | 复制n行 |
y^ | 行首到光标前一个字符 |
y$ | 光标处到行末 |
p | 1.粘贴的内容不是整行的话在光标后插入, 2.粘贴的内容是整行的话,光标处下一行开新行粘贴 |
重复命令
命令 | 含义 |
.(点) | 重复上一次指定的指令 |
选择文件缩进
命令 | 含义 |
V和v | V选择整行,v选择单个字符 |
<<和>> | <<向左缩进,>>向右缩进 |
查找替换
命令 | 含义 |
命令模式下r | r替换光标字符 |
命令模式下R | 替换光标处以及后面的全部,输入一个字符替换一个,到行末继续插入 |
末行模式下,/+str | n查找下一个,N查找上一个 |
末行模式下,%s/abc/123/g | 将文件中所有abc替换为123 |
末行模式下,1,10s/abc/123/g | 将第1行至第10行之间abc替换成123 |
保存退出
命令 | 含义 |
:wq | 写入并保存 |
:w | 写入 |
:w 名称 | 当前数据写入新文件 |
:q! | 强制退出 |
:f | 当前数据写入新文件 |
:x | 保存 |
ZZ/Shift+zz | 保存退出 |
版权声明:本文标题:python核心--常用Linux命令与vim命令 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1724515560h754251.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论