(二)linux基本命令
从虚拟机切换到windows: CTRL+ALT
?命令行切换到图形界面: startx(windows开始按钮+x)
linux系统的根目录(最顶层目录):/
该目录下有:boot bin etc dev lib? root home等目录,按各自特定含义进行使用
登陆linux系统后,当前所在目录即登陆用户所在的宿主目录
比如,以root身份登陆,使用pwd命令可以查看当前所在目录
[root@localhost ~] #? ls (列出当前目录下的文件)
anaconda-ks.cfg? Desktop?? install.log?? install.log.syslog
[root@localhost ~] #? pwd (查看当前所在目录)
/root
--------------------------------------------
cd .? 当前目录(有次面试,面试官抓着问我cd .的结果是什么,我抓狂)
cd..? 返回上一级目录
cd /? 进入最顶层目录
cd ~ 进入用户目录(以root身份登陆,则进入root目录)
pwd? 查看当前所在目录的绝对路径
ls?? 查看当前目录下的子目录和文件
mkdir 创建目录
----------------------------------------------------------------------
每个命令的详细使用参数,使用帮助进行详细解读
man ls 查看ls的帮助信息
ls --help? 将列出ls命令可以使用的参数
ls
参数:
l 以列表方式列出文件,显示权限、大小、创建时间等
a 显示所有子目录与文件,包括隐藏目录
ls -ltc????? 按最后修改时间以列表方式进行降序排序(从最新修改时间开始)?
ls -l /etc? 以列表方式列出指定目录下的目录和文件
?
mkdir
创建一个目录?? mkdir temp
?
touch
创建一个文件 touch a.txt
rm
???? -r 递归recursion?? -f 强制force,不进行提示
删除目录或文件?
rm a.txt 会提示是否确认删除
rm -rf???? 强制递归删除目录及其下所有文件(常用)?
?
cp
复制
-r? 递归
cp?? temp/first/a.txt??./???? 拷贝a.txt到当前目录
cp?? -r temp/first? ./?????????拷贝first整个文件夹到当前目录下(必须加-r参数,递归),可用于备份文件
/bin/cp -rf temp/first ./????拷贝文件夹,不带提示信息进行强制覆盖(cp 命令默认会加-i参数,进行提示,可以直接运行/bin目录中最原始的cp命令,从而实现无提示的覆盖)
?
mv
移动(剪切再粘贴)、重命名
mv temp/first? ./????????????????将first剪切到当前目录
mv first first_new????????????? 重命名
mv temp/first? ./first_new? 将first剪切到当前目录,并重命名
?
*
通配符
cp temp/first/* ./???????? 拷贝first下所有文件到当前目录(不包括first目录)
cp temp/first/*.txt ?./ ? 拷贝first下所有txt文件到当前目录(不包括first目录)
cp -rf?temp/first ./?????? 拷贝first及其目录下所有内容到当前目录
?
vi
编辑文本
touch test.txt? 创建test.txt文本文件
vi test.txt? 打开test.txt进行编辑
a?? 由命令模式进入输入模式(光标右边开始插入新的字符符)
A?? 由命令模式进入输入模式(光标移动到行末)
i???? 由命令模式进入输入模式(光标左边开始插入新的字符)
I???? 由命令模式进入输入模式(光标移动到行首)
o 下方插入空行并转到输入模式(命令模式下)
O 上方插入空行并转到输入模式(命令模式下)
录入文本...
esc 退回到命令模式
:w??? 保存(write)
:q???? 退出(quit)
:wq? 保存并且退出
:x?????保存并且退出
:q!????不保存并且退出
dd??? 删除一行(命令模式下)
2dd? 删除2行
x????? 删除一个字符(命令模式下)
yy??? 复制一行
5yy? 复制5行(从光标当前位置开始的5行)
p????? 粘贴
u????? 撤销
剪切再粘贴(删除->粘贴)? 1.dd(删除) 2.p(粘贴)
?
vi???? 编辑一个不存在的文本
:w new.txt 保存并设置文件名
?
文件之间的复制粘贴
vi a.txt b.txt? (同时打开文件,首先进入a.txt的编辑环境)
yy?复制一行
:next? 进入下一个文本
p? 粘贴
yy 复制一行
:previous 返回上一个文件
p 粘贴
?
?
?
?
查看文件
?cat
cat? a.txt 不分页查看文件(全部显示)
cat a.txt b.txt > c.txt? 合并文件?
?more
分页查看文件(只能往前查看)
more test.txt? 默认按百分比分页,空格继续查看
more -5 test.txt? 每次显示5行
?
less
支持向前pageup向后pagedown查看文件
head
查看文件最开始多少行内容
head -10 test.txt? 查看test.txt前10行
?
tail
tail -10 test.txt?????查看test.txt最后10行(查看日志)
?
history
查看历史执行的命令
history 10? 查看最近执行的10条命令
?
diff
比较2个文件的不同
diff a.txt b.txt
?
wc
查看文本文件的内容信息
wc -l??? test.txt?? 统计一共多少行
wc -w? test.txt?? 统计一共多少个单词(以空格区分是否为单词)
wc -c???test.txt?? 统计一共多少个字符(包括换行符)
????? wc??test.txt??????? 统计行,单词,字符
?
?
?查找文件
find
按文件(文件名,大小,日期等)匹配
find? /dev? -name? sda???? 按名称精确匹配
find? /dev? -name? sda*??? 模糊匹配
find? /dev? -name ?*sda*?? 模糊匹配
?
grep
按文件内容匹配
grep linux a.txt?? 查看a.txt中包含"linux"字符的行
grep linux ./*.txt? 查看当前目录下包含"linux"的行,将列出文件名
注:grep 与 管道组合使用,非常强大!
?
?
?
whereis
whereis cp? 查看cp命令所在文件
linux中每个命令都是一个shell命令集,执行命令实际是在执行shell命令,最终由linux执行shell脚本
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?