Linux入门指令学习记录
系统:Linux
发行版本:CentOS 7 64 位
运行环境:VMware Workstation
安装方法参考:https://www.runoob.com/w3cnote/vmware-install-centos7.html
主要涉及文件和文件夹的操作,电脑运行状态查询。
指令
指令便捷操作
鼠标在桌面右击 “Open terminal”打开指令面板。
进入root用户:sudo root或者su root //不然等下输入其它指令系统可能会显示“Must be root”
帮助: man -help 或者 man -h //查看指令用法。
[Ctrl]+c //输入了错误指令,快捷停止程序。
[Ctrl]+d //结束文字接口。
[Shift]+[Page Up] // 往前翻页
[Shift]+[Page Down] // 往后翻页
exit //退出
clear //清楚屏幕上之前输入过的指令
通配符//*(通配一段字符),[](包含一段字符),?(通配一个字符)
ls b* //显示以b开头的文件
ls *.txt //显示以.txt结尾的文件
ls [0-9] //显示中间字段包含数字的文件,在0前面加个^ 表示取反范围
开关机与机器状态
顺序: sync (同步数据)> shutdown (关机)> reboot(重新启动) > halt (停止)
sync
shutdown //可以man shutdown 来看一下帮助文档
shutdown -h [time] //关机指令time可以是now,一个具体时间(20:25),一个数字(10,表示10分钟后关机,数字前面也可以带+号,+10)
shutdown -r [time] //重启,与上面类似。
reboot //与shutdown -r now类似。
halt //关闭系统,等于shutdown -h now和poweroff
shutdown -c //取消即将要来临的关机
top//查看机器状态,具体解释:https://next.idev365.com/linux/cmd-top/ 熟悉常用快捷键
ps [options] [—help] //显示进程
ps -aux//显示任务管理器列表
ps -aux|grep sshd //显示进程sshd的相关数据
kill//终止文件,一般是用ps找到主进程
kill -l //显示kil列表,主要是9的sigkill(强制关闭主进程,不关闭子进程)和15的sigterm(先释放资源的正常关闭),默认的是15的pid来关闭主进程。
文件与文件夹操作:
系统目录结构参考:https://www.runoob.com/linux/linux-system-contents.html
学习顺序:https://www.runoob.com/linux/linux-command-manual.html
这里只是精简常用的。
文件管理:
绝对路径: /usr/share/doc //绝对路径都是以”/“开头
相对路径: 例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd ../man 这就是相对路径的写法。
Is //列出目录和文件名(list files的意思,用man ls和ls —help查询指令,可以了解按特定规律显示,如用ls *.txt显示txt文件)
ls //直接输入ls显示的当前文件夹中的文件名,无其它信息
ls -l //显示文件夹中每个文件名具体文件信息(第一列是d开头的为文件夹,l为链接文件,c是字符文件,第二列是占用内存块数量,第三个是创建者用户,第四个是用户组,第五个是占用字节,第六个是创建时间,第七个是文件名和其指向的超链接)
cd //切换目录(change directory)
cd //直接输入cd啥也不跟会回到当前路径。
cd / //回到根目录
cd [dirname]/ //进入该文件夹目录,文件夹名只需要输入一两个字母,按TAB键会自动补齐
cd ~ //等价于cd到根目录
cd . .//回到上一级目录,类推,cd ../../..可以到上上上一级
cd - //回到上一次访问的目录
pwd //查看当前路径,Print Working Directory的缩写
mkdir //创建新目录(make directory),可以用mkdir —help查看帮助
mkdir [dirname] //创建一个文件夹
mkdir -p [dirname1]/[dirname2]/[dirname3] //创建一个文件夹组1/2/3
mkdir -v [dirname]//创文件夹同时显示创建信息,可以 mkdir -v -p [dirname]连用,也可以mkdir -pv [dirname]
rmdir //remove directory
rmdir [dirname] //删除文件夹,但是文件夹里有东西的话是没法删除的。
rmdir -p [dirname1]/[dirname2]/[dirname3] //从3删除到1
rmdir -pv [dirname1]/[dirname2]/[dirname3] //参考mkdir指令,一样的,连删带报表
cp //copy,复制文件,可以cp —help
cp [Filename1] [Filename2]//复制Filename1命名为Filename2,名字是要包含后缀的,Filename1也可以是一个路径。
cp [Filename1] [Filename2] [Dirname1] //不仅得到File2,还放到文件夹中。等价于 copy [Filename1] [Dirname1]/[File2]
cp -r [Dirname1] [Dirname2] //Dirname1命名为Dirname2,这个r表示递归。还可以用来批量操作,cp -r a b c abc,就是将a b c三个文件夹包含其内容一块拖到abc这个文件夹中。
touch [filename] //创建一个文件,想修改创建信息可以参考touch —help
file [filename] //linux不会用后缀去判断文件类型,需要用file去判断文档
mv [filename1] [filename2] //将filename1的名字变成filename2,注意linux改名字后缀并不影响文件属性
mv [filename1] [dirname1]/ //把filename1移动到dirname1中。
mv [dirname1] [dirname2]/ //把dirname1移动到dirname2中。
rm [filename1] //删除 [filename1]
rm -i [filename1] //删除时会让你用yse确认一下
rm -r [dirname1] //删除整个文件夹。就算里面有文件也没关系
rm -rf [dirname1] //强制删除文件夹
文档内容编辑
head -[number] [filename1] //从头开始看到[filename1] 的第[number]行,不输入[number]则默认十行
tail -[number] [filename1] //从尾部开始看到[filename1] 的第[number]行,不输入[number]则默认十行,一般用来看日志
cat [filename1]//查看所有内容
vi [filename1] //命令模式,键盘打任何字都视为命令。
接着按i, a或者o进入输入模式,输入完后按Esc返回命令模式。
接着按:冒号键进入底线命令模式。
输入wq回车保存并退出//w是保存,q是退出
不想保存修改就输入q!强行退出
安装vim: yum install -y vim //vim有vi所有功能
在命令模式下输入yy直接复制光标所在行,输入3yy复制光标往下的三行
p粘贴
dd删除当前行
5dd删除当前往下五行
命令模式下
shift + g 跳转到行末
gg 跳转到首行
输入数字10 再按shift+g跳转到第10行
u可以上个撤销
chmod [u|g|o|a] [=|+|-] [r|w|x]//修改文件或目录的权限信息,u代表user,g代表group,o代表other,a代表all。r代表读取属性用数字4也行,w代表写入属性用数字2也行,x代表执行属性用数字1也行。
chmod 777 [filename1] //把[filename1]的ugo都赋予满权限(4+2+1)
chmod g=wx [filename1] //把g赋予[filename1]写和执行的权限
chmod -w [filename1] //减掉[filename1]写的权利
echo //字符串的输出
echo “It is a test\n”//显示普通字符串,\n不会被显示回车,而是字符,引号可以省略
echo -e “It is a test\n” //会显示换行
echo dasdas > [filename] //将字符串写到[filename]里
查找文件
find . -name “[filename1]” //在当前目录查找[filename1]
find . -iname “[filename1]”//在当前目录查找[filename1]且[filename1]不区分大小写
find . -[type] d -name “[filename1]” //在当前目录查找[type]类型的[filename1],[type]的类型分为f(普通文件), d(目录), l(软连接), s(套接字), b(块设备), c(字符设备), p(管道)
find . -mtime -[number]//查找从[number]到今天改过的文件。
grep -r [name1] * //在文件夹中递归查找包含[name1]的文件
grep -rn [name1] * //在文件夹中递归查找包含[name1]的文件,同时还显示在第几行
which [filename1] //查找当前路径下的符合要求的文件