Linux高频命令精讲(三)
【教程主题】:2.Linux高频命令精讲
【2.1】Linux的运行方式
图形运行方式
- 本地使用KDE/Gnome集成环境
- 运行X Server远程使用图形环境
命令行(字符运行)方式
- 本地虚拟终端
- 使用Telnet远程登录
- 使用SSH远程登录
【2.2】字符界面的使用
为什么要使用字符工作方式
- 可以高效率的完成任务
- 远程登录操作均使用字符界面
- 节省系统资源
进入字符模式的方法
- 图形环境下,右键桌面 —> 终端
- 系统启动后直接进入字符模式
- 远程telnet(明文)或SSH(加密)登陆字符模式
【2.3】本地登录和远程登陆
本地登录
Ø 虚拟控制台
在系统启动时直接进入字符工作方式后,系统提供了多个(默认为6个)虚拟控制台。每个虚拟控制台可以互相独立使用,互不影响。
可以使用Alt+F1~Alt+F6进行多个虚拟控制台之间的切换。
Ø 字符界面下登陆Linux
Linxu系统是严格区分大小写的,无论用户名,还是文件名、设备名都是如此。
基于安全的考虑,一般应该使用普通用户登录系统,不要使用root用户登录,当需要进行超级用户的工作时 可以使用 su – 命令切换为超级用户身份。
logout登出 exit退出 都是注销操作
命令提示符后 #为root用户 $为普通用户
远程登陆
Ø Linux下远程登录另一台Linux服务器
Linux下的ssh命令是OpenSSH的客户端程序。要登陆远程Linux系统,必须保证远程Linux系统上启动了OpenSSH服务器。使用ssh命令登陆远程OpenSSH服务器的命令格式是:
$ssh 远程主机上的用户名@远程主机的ip地址或主机名
$ssh IP地址
Ø Windows下利用SSH工具登录一台linux服务器
SecureCRT.exe
http://baike.baidu.com/view/489722.htm 百度百科介绍
xshell
【2.4】Linux的系统运行级别
0 - 系统关机状态
1 - 单用户工作状态,用于维护。
2 - 多用户模式(NFS未启动)
3 - 多用户模式, 字符界面。
4 - 系统未使用,留给用户自定义
5 – 多用户模式,并且在系统启动后运行X Window,给出一个图形化的登录窗口。
6 – 所有进程被终止,重新启动
查看当前系统的运行级别
#runlevel
切换运行级别
#init[0123456]
【2.5】linux的目录结构
Linux文件系统是呈树形结构,了解Linux文件系统的目录结构,对于我们驾驭Linux还是有必要的。
目录 |
说明 |
/ |
Linux文件系统的入口,也是处于最高一级的目录 |
/bin |
基本系统所需要的命令。功能和/usr/bin类似,这个目录中的文件都是可执行的,普通用户都可以使用的命令 |
/boot |
内核和加载内核所需要的文件。一般情况下,GRUB系统引导管理器也位于这个目录 |
/dev |
设备文件存储目录,比如终端、磁盘等 |
/etc |
所有的系统配置文件 |
/home |
普通用户家目录的默认存放目录 |
/lib |
库文件和内核模块所存放的目录 |
/media |
即插即用型存储设备的挂载点自动在这个目录下创建,比如u盘、CDROM/DVD自动挂载后,也会在这个目录中创建一个目录。 |
/mnt |
临时文件系统的挂载点目录 |
/opt |
第三方软件的存放目录 |
/root |
Linux超级权限用户root的家目录 |
/sbin |
基本的系统维护命令,只能由超级用户使用 |
/srv |
该目录存放一些服务启动之后需要提取的数据 |
/tmp |
临时文件目录 |
/usr |
存放用户使用系统命令和应用程序等信息,比如命令、帮助文件等。 |
/var |
存放经常变动的数据,比如日志、邮件等。 |
几个特殊的文件系统
文件系统 |
挂载点 |
说明 |
root |
/ |
Linux系统运行的基点,根文件系统不能被卸载 |
proc |
/proc |
以文件系统的方式为访问系统内核数据的操作提供接口,适用于2.4和2.6内核 |
sysfs |
/sys |
以文件系统的方式为访问系统内核数据的操作提供接口,2.6内核使用 |
tmpfs |
/dev /var/run /var/lock |
程序访问共享内存资源时使用的文件系统 |
usbfs |
/proc/bus/usb |
访问usb设备时使用的文件系统 |
devpts |
/dev/pts |
内核用来与伪终端(以远程方式登陆)进行交互的文件系统 |
swap |
内核使用的特殊文件系统,无挂载点 |
用来创建虚拟内存 |
【2.6】linux命令
Linux命令的习惯
- 命令及参数区分大小写
- 程序可否执行与扩展名无关
- 使用tab键来补全命令
$command [-options] parameter1 parameter2 …
指令 选项 参数1 参数2
说明:
0. 一行指令中第一个输入的绝对是‘指令(command)’或‘可执行文件’
1. command 为指令的名称,例如变换路径的指令为 cd 等等;
2. 中刮号[]并不存在于实际的指令中,而加入参数设定时,通常为 - 号,例如 -h; 有时候完整参数名称会输入 -- 符号,例如 --help;
3. parameter1 parameter2.. 为依附在 option 后面的参数, 或者是 command 的参数;
4. command, -options, parameter1.. 这几个中间以空格来区分,不论空几格 shell 都视为一格;
5. 按下 [Enter] 按键后,该指令就立即执行。
6. 指令太长的时候,可以使用 \ 符号来跳脱 [Enter] 符号, 使指令连续到下一行。注意! \ 后就立刻接特殊字符。
7. 在 Linux 系统中,英文大小写字母是不一样的。举例来说, cd 与 CD 并不同。
常用命令介绍
pwd
查看当前工作目录
cd
更换目录
用法:
cd [目录]
符号 |
意义 |
. |
当前工作目录 |
.. |
父目录 |
~ |
用户家目录 |
- |
上个工作目录 |
ls
显示目录
用法: ls [参数] [目录名]
ls 参数:
-a:显示所有文件,包括隐藏文件(以.开头的文件)
-l:以长格式显示
-t:按修改时间先后显示
-R:显示目录及下级子目录结构(递归)
-m: 横向输出文件名,并以“,”作分格符。
-S: 以文件大小排序。
用颜色代表不同文件
白色:普通文件
红色:压缩文件
蓝色:目录文件
浅蓝色:链接文件
黄色:设备文件(/dev)
绿色:可执行文件(/bin、/sbin)
粉红色:图片文件
mkdir
建立目录
用法: mkdir [参数] {目录名}
参数: -p 可以一次性创建整个目录树
rmdir
删除目录
用法: rmdir [参数] {目录名}
• 如果目录是空的,此命令会删除他们,如果目录中有内容,则会产生错误信息且不能删除目录,但是他会继续删除其余的空目录。注意,只包括一个子目录的目录不是空的。
rm
删除文件和文件夹
用法: rm [参数] {文件}
参数:
-r 删除整个目录树
-f 强制执行
tree
显示文件和目录树
用法: tree [参数] {文件}
参数: -a 不隐藏任何以.字符开始的条目
-d 只显示目录不显示文件
-f 每个文件都显示路径
-t 根据最后修改时间排序
-L n 只显示n层目录 (n为数字)
touch
创建空文件和更改时间戳
用法:touch [参数] {文件}
参数: -d 更改时间戳为定义值 (后面加年月日,格式:20101212)
cp
复制目录
用法: cp [参数] {原文件…} {目标文件}
参数: -r 递归执行 (可复制目录树)
mv
移动或重命名文件
用法: mv [参数] {原文件} {目标文件} 把原文件更名为目标文件
mv [参数] {原文件…} {目标文件} 把一个或多个文件同时移动到目标文件中
查看文档:
cat 由第一行开始显示文件的内容
cat命令显示文件时会同时显示所有内容。大型文件在屏幕上一晃而过,难以阅读。所以他比较适合小于一屏的文件。
用法:
cat [option] filename
tac 从最后一行开始显示
file显示文件类型
file [option] filename
more 一页一页的显示档案内容 :
l 空格键 (space):代表向下翻一页;
l Enter:代表向下翻『一行』;
l /字符串:代表在这个显示的内容当中,向下搜索『字符串』这个关键词;
l :f :立刻显示出文件名以及目前显示的行数;
l h 帮助
l b 或 [ctrl]-b :代表往回翻页
l q:退出
· less 与 more 类似,less可以往前翻页! :
l 空格键:向下翻一页;
l [pagedown]:向下翻一页;
l [pageup]:向上翻一页;
l /字符串:向下搜索『字符串』;
l ?字符串 :向上搜索『字符串』;
l n:重复前一个搜索
l N:反向的重复前一个搜索
l h:帮助
l q:退出
head显示文件开始几行
用法:
head [options] {file…}
参数 : –n number查看前几行的值
tail显示文件最后几行
用法:
tail [options] {file…}
参数 : –n number 查看后几行的值
–f 一直监视
【7】man 帮助文档
路径:/usr/share/man
用法: man [参数] [查询名]
/ 来查找
q退出
其他获得帮助的方法
--help
-h
info 命令
help 内置命令
readme
【8】关机
将数据同步写入硬盘:sync
shutdown命令
shutdown命令的格式为:
#shutdown [参数] 时间 [警告信息]
-t sec :送出警告信息和删除信息之间要延迟多少秒
- k:并不真正关机而只是发出警告信息给所有用户
- r:关机后立即重新启动
- h:关机后停止系统
init 0
重启:reboot init6
【9】别名
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias ls='ls --color=auto'
alias ll='ls -lh --color=auto'
alias l='ls --color=auto'
alias grep='grep --color=auto'
debian系统的时候要在/etc/profile里面进行设置
【10】find
[root@www ~]# find [PATH] [option] [action]
选项与参数:
1. 不时间有关的选项:共有 -atime, -ctime 与 -mtime ,以 -mtime 说明
-mtime n :n 为数字,意义为在 n 天之前的『一天之内』被更改过内容的文件
-mtime +n :列出在 n 天之前(不含 n 天本身)被改动过内容的文件;
-mtime -n :列出在 n 天之内(含n 天本身)被更改过内容的文件。
-newer file :file 为一个存在参照物,列出比 file 还要新的文件
[root@www ~]# find / -mtime 0
# 那个 0 是重点!0 代表目前的时间,所以,从现在开始到 24 小时前,有改动过内容的文件都会被列出来
find / -mtime 3 #3天内改动过的文件
find / -name file –exec ls –l {} \;
文件的 Access time,atime 是在读取文件或者执行文件时更改的。
文件的 Modified time,mtime 是在写入文件时随文件内容的更改而更改的。
文件的 Create time,ctime 是在写入文件、更改所有者、权限或链接设置时随 Inode 的内容更改而更改的。
ls -lc filename 列出文件的 ctime
ls -lu filename 列出文件的 atime
ls -l filename 列出文件的 mtime
【11】查看命令历史
history
【12】环境变量
PATH命令搜索的路径
export PATH=/usr/bin:/usr/local/zabbix/bin:/usr/local/php5/bin
【2.7】管道
grep
-c 只输出匹配行的计数。
-i 不区分大小写(只适用于单字符)。
-h 查询多文件时不显示文件名。
-l 查询多文件时只输出包含匹配字符的文件名。
-n 显示匹配行及行号。
-s 不显示不存在或无匹配文本的错误信息。
-v 显示不包含匹配文本的所有行。
sort -r 反向排序
cut –d ‘分割符’ –f 取第几段
uniq –c 计数
wc –l 统计多少行
【2.8】linux中的正则
&&且
||或
几个概念:
1.基本正则表达式 扩展的正则表达式 (由普通字符+元字符组成)
2.通配 (由普通字符+元字符组成)
3.元字符
注意:正则表达式中元字符的意义和通配中元字符的意义有区别的
bash shell本身不支持正则表达式,使用正则表达式的是shell的一些命令和工具,如grep,sed,awk等等
但是bash可以使用正则表达式中的一些元字符实现通配的功能,此时的这些元字符叫通配符。
此时通配中元字符的意义跟正则表达式中元字符的意义就不一样了。
通配是指:将一个包含通配符的非具体的文件名扩展为计算机,服务器,网络上的一批具体的文件名的过程。
基本正则表达式中元字符的意义如下:
1. * 匹配*前面的那一个字符的0次或多次
如hel*o heo helo hello helllo ......
2. . 匹配任意一个字符(只匹配一个,可以是空格)
如ab. abc abd ab3 ab ......
3. ^ 匹配行首,行首的字符序列必须是^后的字符序列
如^suda sudahuhuhuuuuuhuuh sudaokokokokokoko ......
4. & 匹配行尾,行尾的字符序列必须是$前的字符序列
如suda$ jijijijijiiijijsuda lkokokokokjijhuhsuda ......
特殊的 ^$ 匹配一个空行
^.$ 匹配只有一个字符的空行
5. [] 匹配字符集合中的任意一个字符(只匹配一个)
如[1234] [1-4] 匹配1,2,3,4的任意一个字符
注意:^放在[]里面时,不再表示匹配行首,而是取反的意思
[^1234] [^1-4] 匹配不是1,2,3,4的任意一个字符
[a-z][A-Z]* 匹配任意一个英文单词
6. \ 用于转义元字符,使之成为普通字符
如\* 此时*表示一个普通字符
7. \<\> 用于精确匹配
如\<the>\ 表示精确匹配the这个单词,而不是them then等等
8.\{\}系列符号
\{n\} 匹配前面字符的n次
\{n,\} 匹配前面字符的至少n次
\{n,m\} 匹配前面字符的n-m次,至少n次,至多m次
如JO\{3\}B 匹配JOOOB
如JO\{3,\}B 匹配JOOOB JOOOOB ......
如JO\{3,6\}B 匹配JOOOB JOOOOB JOOOOOB JOOOOOOB
扩展的正则表达式中元字符的意义如下:
1. ? 匹配前面的那一个字符的0次或1次
如JO?B 匹配 JB JOB JOOB
2. + 匹配前面的那一个字符的1次或多次
如JO+B 匹配 JOOB JOOOB ......
3. |与()通常结合使用,表示一组可选的字符集合
如re(a|o|e)d 匹配read reod reed
等同于re[aoe]d
通配中的元字符的意义如下:
1. * 表示任意多的任意字符
2. ? 表示一个任意字符
3. ^ 表示取反
4. [] 同正则表达式的用法
5. {} 表示一组表达式的集合 {}中表达式是或的关系
如ls -l {*.cpp , [1234]*.c} 列出满足表达式*.cpp或者[1234]*.c的文件。
Linux高频命令精讲(三)的更多相关文章
- Linux实战教学笔记12:linux三剑客之sed命令精讲
第十二节 linux三剑客之sed命令精讲 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件 ...
- linux驱动开发重点关注内容--摘自《嵌入式Linux驱动模板精讲与项目实践》
本文摘自本人拙著 <嵌入式Linux驱动模板精讲与项目实践> 初步看起来Linux设备驱动开发涉及内容非常多,而须要实现驱动的设备千差万别.事实上做一段时间驱动之后回首看来主要就是下面几点 ...
- Linux常用命令大全(三)
Linux常用命令大全(三) 文件类型 普通文件(文本文件.数据文件.可执行的二进制文件) 目录文件 同上 差别:由成对的"I节点号.文件名"构成的列表 设备文件 (字符设备.块设 ...
- 【Linux高频命令专题(19)】vi/vim
概述 其实在Linux中一切命令或者软件都是文件,所以把vi/vim作为高频命令专题之一,也没什么不妥.虽然大家都称之为编辑器~~ vim是vi的高级版本,比如有代码高亮,也就是说可以把vim定位为程 ...
- 【Linux高频命令专题(9)】ls
ls命令是linux下最常用的命令.ls命令就是list的缩写缺省下ls用来打印出当前目录的清单如果ls指定其他目录那么就会显示指定目录里的文件及文件夹清单. 通过ls 命令不仅可以查看linu ...
- 【Linux高频命令专题(10)】mv
概述 mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录. 命令格式 mv [选项] 源文件或目 ...
- 【Linux高频命令专题(23)】tar
概述 通过SSH访问服务器,难免会要用到压缩,解压缩,打包,解包等,这时候tar命令就是是必不可少的一个功能强大的工具.linux中最流行的tar是麻雀虽小,五脏俱全,功能强大. tar命令可以为li ...
- 【Linux高频命令专题(22)】gzip
概述 减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间.gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用.gzip不仅 ...
- 【Linux高频命令专题(21)】df
概述 linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息. 显示指定磁盘文件的可用空间.如果没有文件名 ...
随机推荐
- Sublime Text增加Build system类型,打造一个全能IDE
Sublime text2是一款非常方便的文本编辑器,现在我基本上不用IDE去编写代码,一般都是在Sublime text2中编辑,当然,这里无法执行.debug是软肋,于是上网找了下资料,可以把添加 ...
- win10 标注工具LabelImg 安装使用
安装步骤(默认已经安装了Python3.X ): pip 安装PyQt5 进入cmd(Win键 + R键,输入cmd,enter键入),输入: >>pip install PyQt5 如果 ...
- SNF微信公众号客户端演示-微信开发客户端能干什么
关注测试微信号: 关注后菜单页面如下: 一.扫描二维码进行订单查询演示 1.点击菜单“软件产品”->选择“扫描查询” 2.扫描如下二维码进行订单查询演示. 3.扫描结果如下: 二.微信“输入订单 ...
- django性能优化缓存view详解
缓存提升性能: 1.通常的view会去数据库端执行相关的查询然后交由template渲染.数据库访问通常就是性能的瓶颈所在. 2.由于许多数据要很久才会变一次.两次连续的数据库访问通常返回的数据是一样 ...
- ( ̄▽ ̄)" 关于河北ETC记账卡的默认密码
去营业厅问了下,是6个1(111111),一般人我不告诉他 ...( _ _)ノ| 好吧,在技术博客里发这种东西合适吗? 还有就是,如果需要打印单位抬头发票的话,需要携带委托书盖单位公章(委托书可以去 ...
- 【Android开发】交互界面布局详解
原文:http://android.eoe.cn/topic/summary Android 的系统 UI 为构建您自己的应用提供了基础的框架.主要包括主屏幕 (Home Screen).系统 UI ...
- win2016安装postgresql安装不了的问题
我在阿里云的win2016服务器上下载postgresql,结果怎么都装不上. 双击 Exe没有 任何 反映 .. ... 网上搜索不出..在N个群里问 ,终于碰到有人和我一样的问题了..原来是阿里云 ...
- iPhone:动态获取UILabel的高度和宽度
转自:http://www.cnblogs.com/spiritstudio/archive/2011/11/17/2252074.html 在使用UILabel存放字符串时,经常需要获取label的 ...
- angular中的jqLite所包含的jquery API
Angular本身包含了一个叫做jqLite的可兼容性库. 使用过的angular.element()方法就返回一个jqLite对象, jqLite是jQuery库的子集,它 允许Angular以跨 ...
- 关于https中的算法
1,对称加密算法,是指加密和解密使用相同的密钥,典型的算法有RSA,DSA,DH 2,非对称加密算法:又称为公钥加密算法,是指加密和解密使用不同的密钥,公共的公钥用于加密,私钥用于解密,比如第一次请求 ...