补充完善
第三天学习linux (因为要写的方便日后使用所以就接着上次写了。)
- 给大家先介绍一个实用的东西,以后会常常用到
在Linux操作系统中的快捷键
快捷键 | 功能 |
---|---|
ctrl +alt+T | 启动终端 |
全屏截图 | |
Ctrl +alt+A | 截图 |
alt+tab | 切换窗口 |
shift+alt+tab | 反向切换窗口 |
super+D | 显示桌面 |
super+E | 文件管理器 |
super+L | 屏锁界面 |
super+up | 最大化窗口 |
super+down | 恢复窗口 |
super+N | 最小化窗口 |
alt+F4 | 关闭窗口 |
- 给大家介绍一些Shell基本命令、
要学习Shell基本命令,首先要明白什么是Shell
在Linux环境下常用的Shell类型有:- Bourne Again Shell(BASH)
- TCSH Shell
- Z-Shell
下面就介绍一些命令
首先举个例子
$ sudo apt-get update ##这是一个确保软件包是最新的的命令
简单说一下##之前的命令,之后的是注释,方便理解
$ ## 在BASh中作为提示符,表示用户可以输入命令了
# ##这是以root身份执行命令的提示符
我所提到的命令将以“提示符+命令+注释”给出
在BASH中,美元提示符前一般会有其他信息,如用户名等等
还有在需要用到root权限的时候,个人建议使用sudo临是提升用户权限
$ cd / ##进入根目录
$ cd ##进入用户主目录
$ ls ##列出文件和目录
$ cd home / ##进入/home目录
$ cd /etc/ ##进入/etc/目录(ETC目录一般存放了系统和绝大部分软件的配置文件,而且Linux和Windows有区别的是,Linux使用纯文本文件来配置软件)
BASh可以将一些命令自动补全
$ cat fs<tab> ##<tab>按下tab键
代码将补全为:
$ cat fstab ##查看fstab文件
Shell有一套专用符号被称为通配符
- “*”用于匹配文件中任意长度的字符串
$ ls
main.cpp makefl=ile quicksort quicksort.cpp
$ ls *.cpp
main.cpp quicksort.cpp
- "?"只匹配一个字符
$ ls
text1 text2 texta textx text-1 text-2
$ ls text?
text1 text2 texta textx
- “[ ]”匹配所有在方括号里的字符(当然可以用“-”连接,制定一个字符集范围)
$ ls
text1 text2 texta textx text-1 text-2
$ ls text[1a]
text1 texta text-1
$ ls text[1-3]
text1 text2 text-1 text-2
查看目录和文件
$ cd/usr/local/bin/ ##进入/usr/local/bin/
$ pwd ##查看当前的位置
/usr/local/bin/
返回
$ cd /usr/bin/ ##进入/usr/bin/
$ cd.. ##“..”表示返回当前目录的上一级目录,“.”表示当前目录,“~”表示用户主目录
****
列出目录内容 ls ,dir, vdir
$ cd
$ ls ## 列出当前目录的内容
Music Picture Downloads Desktop
$ ls -F
Music/ Picture/ Downloads/ Desktop/
通常情况下,目录显示为蓝色;普通文件为黑色;可执行文件为草绿色;淡蓝色则表示为链接文件。
当然我们可以使用ls -F命令,其好处就是每个目录后会加上/,可执行文件后加上*;链接文件后加上@ 这个再有些无法显示颜色的终端上有大用处。
列出目录内容的隐含内容
$ ls -aF
./ Music/ Picture/ Downloads/ Desktop/
.adobe/ .gvfs/ .sudoku/ text*
1 头部带“."的文件名,在Linux中被称为隐含文件,默认情况是不显示的。
2 指定-a后,用于显示所有文件
查看文件的属性 -1
$ cd /etc/fonts/
$ ls -1
-rw-r--r-- 1 root root 5283 2008-02-29 01:22 fonts.conf
-rw-r--r-- 1 root root 6961 2008-02-29 01:22 fonts.dtd
dir 除了功能比ls少,其他一模一样,至于vdir就是ls命令加上-1
查看文本文件: cat,more
$ cat day
Monday
Tuesday
Wendnesday
Thursday
Friday
Saturday
Sunday
当然为了调试方便可以加上-n,这样在每一行前加上序号
$ cat day
1.Monday
2.Tuesday
3.Wendnesday
cat 会一次将所有内容全部显示在屏幕上,但是有的文件太长,很不方便,因此就有了more来将文件一页一页展示
more 命令会在文末显示一个百分比,表示以显示内容占整个文件的百分比,按空格键换下一页,按回车键滚动到下一行,按Q键退出
当然阅读文件有时候不需要一行一行挨着看,有时候可以从头浏览或者从文末浏览,这时候就有了:head和tail命令
$head ##显示文件开头
$head -n ##显示文件开头,有序号
$tail ##显示文件尾部
$tail -n ##显示文件尾部,有序号
文本阅读命令 less
less和more非常相似,打功能更加的丰富,具体内容如下
- 使用光标键在文本文件中前后滚屏
- 可以检索
- 阅读到文章底部时 less命令不会退出
- 屏幕底部的信息提示更容易去控制
$ less /boot/grub/grub.cfg ##阅读/boot /grub/grub.cfg的内容
但是使用less命令,我们会发现:在屏幕底部有个“:”等待用户输入命令例如空格键向下翻页,B键向上翻页
查找内容在“:”后输入“/+检索内容”
使用带“-M”less命令输出底部会显示文件的名字,当前的页码,总的页数,以及当前所在整个文章百分比的值
查找文件内容 grep
$ grep un day ##在文件day中查找带un的
Sunday
注意:grep有两个功能1 关键词查找(查找关键词,关键词必须在单引号内)2 文件查找
找东西 find
$ find /usr/bin -name zip -print ##在/usr/bin/中查找zip,其中-name制定了文件名,-print将结果输出到屏幕
/usr/bin/zip
$ find ~/ -name *.c -print ## 列出用户主目录下的所有c程序文件
用-type选项定位特殊类型文件
$ find /etc/ -name init.d -type d -print ##在etc目录中查找名叫做init.d的
注意:如果查找结果中有某些行出现Permission denied 这表示为普通用户没有权限进入,查找过程中跳过该目录
find命令-type开始用的参数:
参数 | 含义 |
---|---|
b | 块设备文件 |
c | 字符设备文件 |
f | 普通文件 |
d | 目录文件 |
p | 命令管道 |
l | 符号链接 |
按指定时间查找 -atime n(查找最后一次是该是n天前的 +表示大于 -表示小于)
$ find /usr/bin/ -type f -atime +100 -print ##在/usr/bin/中查找100天之前修改的文件
$ find . -type f -mtime -1 -print ## 查找当前目录一天内修改的文件
运行程序命令
$ chrome ##运行chrome
$ chrome & ## chrome 在后台运行
查找特定程序
$ whereis find ##查找find命令
$ whereis -b find ##只查找程序可执行的二进制文件
寻求帮助 man命令
$ man find ##获取某个命令
在显示过程中调用了less命令J,K上下翻动,Q退出 空格键下一页
想知道命令的功能 whatis和apropos
$whatis uname ##unanme的功能
$apropos search ##search的功能