linux系统遵循的基本原则

  • 由目标单一的小程序组成,组合小程序完成复杂任务;
  • 一切皆文件;
  • 尽量避免捕捉用户接口;
  • 配置文件保存为纯文本文件;

Linux命令行常识

命令格式

命令+选项+参数
  • 选项:

    短选项:- 多个短选项可以结合:-a -b = -ab

    长选项:--

  • 参数:命令的作用对象;

命令类型

  • 内置命令:shell内部设置,内建;
  • 外部命令:在文件系统的某个路径下有一个与命令名称相应的可执行文件;
  • 检测是内外部命令的方式:使用type命令;

    type命令使用方法:
type+要检查的命令

环境变量

  • 定义:命令的内存空间(方便命令的使用)
  • 多命令:利用“;”隔开;

man手册使用

man手册分章

1:用户命令(/bin, /usr/bin, /usr/local/bin)
2:系统调用
3:库用户
4:特殊文件(设备文件)
5:文件格式(配置文件的语法)
6:游戏
7:杂项(Miscellaneous)
8: 管理命令(/sbin, /usr/sbin, /usr/local/sbin)

命令解读:

<>:必选
[]:可选(可省略)
...:可以出现多次
|:多选一
{}:分组

MAN:

NAME:命令名称及功能简要说明
SYNOPSIS:用法说明,包括可用的选项
DESCRIPTION:命令功能的详尽说明,可能包括每一个选项的意义
OPTIONS:说明每一个选项的意义
FILES:此命令相关的配置文件
BUGS:
EXAMPLES:使用示例
SEE ALSO:另外参照

操作方法:

翻屏:
向后翻一屏:SPACE
向前翻一屏:b
向后翻一行:ENTER
向前翻一行:k 查找:
/KEYWORD: 向后
n: 下一个
N:前一个 ?KEYWORD:向前
n: 下一个
N:前一个 q: 退出

文件系统操作相关命令

文件系统目录结构

/boot: 系统启动相关的文件,如内核、initrd,以及grub
(bootloader)
/dev: 设备文件
设备文件:
块设备:随机访问,数据块
字符设备:线性访问,按字符为单位
设备号:主设备号(major)和次设备号(minor)
/etc:配置文件 (Linux哲学:将配置文件保存成纯文本文件)
/home:用户的家目录,每一个用户的家目录通常默认为/home/
USERNAME
/root:管理员的家目录;
/lib:库文件
静态库, .a
动态库, .dll, .so (shared object)
/lib/modules:内核模块文件
/media:挂载点目录,移动设备(挂载:将设备关联到该文件系统
的某个目录上)
/mnt:挂载点目录,额外的临时文件系统
/opt:可选目录,第三方程序的安装目录(optional 可选的)
/proc:伪文件系统,内核映射文件(内核的根本功能属性 如:各
种协议的支撑 路由功能的支撑等)
/sys:伪文件系统,跟硬件设备相关的属性映射文件
/tmp:临时文件, /var/tmp(一个月后自动删除其内容 任何用户
都可以创建 但只能删除自己的内容)
/var:可变化的文件
/bin: 可执行文件, 用户命令
/sbin:管理命令

注意:

1) /bin /sbin 存放和系统启动相关的命令

2)  /usr:shared, read-only (全局共享只读文件)
/usr/bin
/usr/sbin
/usr/lib
(系统启动后 提供基本功能所使用的相关命令和可执行程序) 3) /usr/local:(第3方软件 非关键性程序)
/usr/local/bin
/usr/local/sbin
/usr/local/lib

文件系统的基本命令

1)文件管理命令
  • touch命令
语法:
# touch(选项)(参数) 功能:
修改文件的时间戳;创建新的空文件; 选项:
-a:改变访问时间
-m:改变修改时间
-t:改变为指定时间 e.g. # touch -mt 199301101123
-c:不创建任何文件 事实上,stat命令显示的是文件i节点的信息。Linux文件系统以块为单位存储信息,为了找到某一个文件所在存储空间的位置,用i节点对每个文件进行索引。
  • stat命令
语法:
# stat (选项)(参数) 功能:
用于显示文件或文件系统的详细信息 选项:
-f:不显示文件本身的信息,显示文件所在文件系统的信息
-L:显示符号链接
-t:只显示摘要信息
  • file命令
语法:
file(选项)(参数) 功能:
显示文件的文件类型; 选项:
-L:直接显示符号链接所指向的文件类型 参数:
要确定的文件类型的文件列表,多个文件之间用空格隔开,可以使用shell通配符匹配多个文件
  • rm命令
语法:
# rm (选项)(参数) 功能:
删除文件 选项:
-i:删除文件前询问用户
-f:强行
-r:递归 注意:rm -rf / (一定要小心 这是致命的命令)
  • cp命令
语法:
#cp (选项)(SRC DEST) 功能:
拷贝文件或目录 选项:
-r:递归
-i:执行命令前询问用户
-f:强行
-p:保留原文件或目录的属性
-a:归档复制,常用于备份 注意:
多个文件到一个目录
#cp /etc/{passwd,inittab,rc.d/rc.sysinit} /tmp/
( "{}"表示命令行展开)
  • mv命令
语法:
# mv (选项)(SRC DEST) 功能:
1)当目标文件为目录文件时,源文件移动到该目录下,且文件名不变;其次,源文件可以为多个,所有源文件都被移动个该目录下且文件名不变。
2)当目标文件不是目录文件时,源文件和目标文件在同一目录下,则是在修改目标文件的文件名,反之,则是源文件(只能为一个)覆盖目标件。 选项:
-b:覆盖前先备份
-f:强行
-i:执行前询问用户
-t:移动多个源文件
  • cat/tac命令
语法:
# cat/tac (选项)(参数) 功能:
1)一次显示整个文件: cat filename
2)从键盘创建文件:cat > filename
3)将几个文件合并为一个文件:cat file1 file2 > file 选项:
-b:对非空输出行号
-E:在每行结束处显示$
-n:对输出的所有行进行编号,由1开始
  • more命令
语法:
# more (选项)(参数) 功能:
按页显示文件内容 选项:
+n:从笫n行开始显示
-n:定义屏幕大小为n行
-p:通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似 操作:
Enter 向下n行,需要定义。默认为1行
Ctrl+F 向下滚动一屏
空格键 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
V 调用vi编辑器
!命令 调用Shell,并执行命令
q 退出more
  • less命令
语法:
# less (选项)(参数) 功能:
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。 选项:
-b <缓冲区大小> 设置缓冲区的大小
-e 当文件显示结束后,自动离开
-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
-g 只标志最后搜索的关键词
-i 忽略搜索时的大小写
-m 显示类似more命令的百分比
-N 显示每行的行号
-o <文件名> 将less 输出的内容在指定文件中保存起来
-Q 不使用警告音
-s 显示连续空行为一行
-S 行过长时间将超出部分舍弃
-x <数字> 将“tab”键显示为规定的数字空格 操作:
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
b 向后翻一页
d 向后翻半页
h 显示帮助界面
Q 退出less 命令
u 向前滚动半页
y 向前滚动一行
空格键 滚动一行
回车键 滚动一页
[pagedown]: 向下翻动一页
[pageup]: 向上翻动一页
  • head命令
语法:
# head (选项)(参数) 功能:
head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。 选项:
-q 隐藏文件名
-v 显示文件名
-c<字节> 显示字节数
-n<行数> 显示的行数
  • tail命令
语法:
# head (选项)(参数) 功能:
用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。 选项:
-f 循环读取
-q 不显示处理信息
-v 显示详细的处理信息
-c<数目> 显示的字节数
-n<行数> 显示行数
  • cut命令
语法:
# cut(选项)(参数) 功能:
1)显示文件内容;
2)连接两个或多个文件:cut f1 f2 > f3 选项:
-b:仅显示行中指定直接范围的内容;
-c:仅显示行中指定范围的字符;
-d:指定字段的分隔符,默认的字段分隔符为“TAB”;
-f:显示指定字段的内容;
-n:与“-b”选项连用,不分割多字节字符;
--complement:补足被选择的字节、字符或字段;
--out-delimiter=<字段分隔符>:指定输出内容是的字段分割符;
--help:显示指令的帮助信息;
--version:显示指令的版本信息。
  • join命令
语法:
# join (选项)(参数) 功能:
“将两个文件里指定栏位同样的行连接起来”,即依照两个文件里共有的某一列,将相应的行拼接成一行。 选项:
-a FILENUM:除了显示匹配好的行另外将指定序号(1或2)文件里部匹配的行显示出来
-e EMPTY:将须要显示可是文件里不存在的域用此选项指定的字符取代
-i :忽略大写和小写
-j FIELD :等同于 -1 FIELD -2 FIELD,-j指定一个域作为匹配字段
-o FORMAT:以指定格式输出
-t CHAR :以指定字符作为输入输出的分隔符join 默认以空白字符做分隔符(空格和\t),能够使用 join -t $'\t'来指定使用tab做分隔符
-v FILENUM:与-a相似 但值显示文件里没匹配上的行
-1 FIELD:以file1中FIELD字段进行匹配
-2 FIELD:以file2中FIELD字段进行匹配
--help :打印命令帮助文件 样例:
文件 file1.txt
aa 1 2
bb 2 3
cc 4 6
dd 3 3
文件file2.txt
aa 2 1
bb 8 2
ff 2 4
cc 4 4
dd 5 5 # join file1.txt file2.txt
输出:aa 1 2 2 1
bb 2 3 8 2
2)目录管理命令
  • ls
语法:
ls (选项)(参数) 功能:
显示目录列表 选项:
-l:长格式
文件类型:
-:普通文件 (f)
d: 目录文件
b: 块设备文件 (block)
c: 字符设备文件 (character)
l: 符号链接文件(symbolic link file)
p: 命令管道文件(pipe)
s: 套接字文件(socket)
文件权限:9位,每3位一组,每一组:rwx(读,写,执行),
r--
文件硬链接的次数
文件的属主(owner)
文件的属组(group)
文件大小(size),单位是字节
时间戳(timestamp):最近一次被修改的时间
访问:access
修改:modify,文件内容发生了改变
改变:change,metadata,元数据(文件的属性)
-h:做单位转换
-a: 显示以.开头的隐藏文件
. 表示当前目录
.. 表示父目录
-A 不包含 . 和 ..文件
-d: 显示目录自身属性
-i: index node, inode
-r: 逆序显示
-R: 递归(recursive)显示
  • cd
语法:
cd (选项)(参数) 功能:
切换工作目录; 参数:
cd ~USERNAME: 进入指定用户的家目录
cd -:在当前目录和前一次所在的目录之间来回切
  • mkdir
语法:
mkdir (选项)(参数) 功能:
创建目录 选项:
-m<目标属性>或--mode<目标属性>:建立目录的同时设置目录的权限;
-p或--parents: 若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录;
3)排序命令
  • sort
语法:
sort (选项)(参数) 功能:
将文件进行排序,并将排序结果标准输出。sort命令既可以从特定的文件,也可以从stdin中获取输入。 选项:
-n:数值排序
-r: 降序
-t: 字段分隔符
-k: 以哪个字段为关键字进行排序
-u: 排序后相同的行只显示一次
-f: 排序时忽略字符大小写
  • uniq
语法:
uniq(选项)(参数) 功能:
报告或删除文件中重复的行 选项:
-c: 显示文件中行重复的次数
-d: 只显示重复的行
4)统计命令
  • wc
语法:(word count)
wc (选项)(参数) 功能:
用来计算数字。利用wc指令我们可以计算文件的Byte数、字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据。 选项:
-c或--bytes或——chars:只显示Bytes数;
-l或——lines:只显示列数;
-w或——words:只显示字数。
5)字符处理命令
  • tr
语法:
tr(选项)(字符集1 字符集2) 功能:
对来自标准输入的字符进行替换、压缩和删除。 选项:
-c或——complerment:取代所有不属于第一字符集的字符;
-d或——delete:删除所有属于第一字符集的字符;
-s或--squeeze-repeats:把连续重复的字符以单独一个字符表示;
-t或--truncate-set1:先删除第一字符集较第二字符集多出的字符。 参数:
字符集1:指定要转换或删除的原字符集。当执行转换操作时,必须使用参数“字符集2”指定转换的目标字符集。但执行删除操作时,不需要参数“字符集2”;
字符集2:指定要转换成的目标字符集。 详解见链接:
https://www.cnblogs.com/ginvip/p/6354440.html
6)日期时间管理命令
  • date
语法:
date (选项)(参数) 功能:
显示或设置系统时间与日期。 选项:
-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;
-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;
-u:显示GMT;
--help:在线帮助;
--version:显示版本信息。 详细操作见链接:
http://man.linuxde.net/date
  • clock/hwclock
语法:
clock (选项)(参数) 功能:
设置修改时间 详细操作见链接:
http://blog.csdn.net/YuYunTan/article/details/52589019

linux常用基本命令整理小结的更多相关文章

  1. Linux常用基本命令(less)

    转: Linux常用基本命令(less) LESS:跟more命令的功能类似,都是用于分页显示内容,但是他的性能比more更高,功能比more更丰富,他读取文件是按需加载 格式: less [opti ...

  2. Linux 常用基本命令及应用技巧

    需要pdf 版 联系我 我的文件中有目录一.Linux 的常用基本命令................................................................. ...

  3. Linux常用指令整理

    Linux常用命令整理 快捷键 [Tab] [Tab] 接在一串指令的第一个字的后面,则为"命令补全": [Tab] 接在一串指令的第二个字以后时,则为"文件补齐&quo ...

  4. Linux常用命令整理 - imsoft.cnblogs

    su 用户名 在不退出登陆的情况下,切换到另外一个人的身份如果用户名缺省,则切换到root状态会提示输入密码,密码不回显的. 在用su命令切换root用户时,使用“-”选项,这样可以将root的环境变 ...

  5. 【Linux】linux常用基本命令(转)

    (转自:http://blog.csdn.net/xiaoguaihai/article/details/8705992) Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用 ...

  6. 【Linux】linux常用基本命令

    Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们.   这个是我将鸟哥书上的进行了一下整理的,希望不要涉及到版权问题. 1.显示日 ...

  7. linux常用基本命令

    Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们.   系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器 ...

  8. Linux常用基本命令:三剑客命令之-awk格式化动作

    我们之前说过,awk是一个超强的文本格式化工具,而本文的printf动作就是经常用来做格式化文本的.使用方式跟c语言的printf差不多. 1,printf默认不会回车换行 ghostwu@dev:~ ...

  9. Linux常用命令整理:文件目录管理

    据说,你要对Linux文件做的事情,98%都记录在这篇文章里了. 1.ls命令 最常见的命令,相信刚进入linux命令行界面的时候,都要用这个命令看看当前目录下都有哪些文件吧. 名称:List 含义: ...

随机推荐

  1. 某pdf转word v6.3.0.2算法分析

    某pdf转word v6.3.0.2算法分析 [文章标题]某pdf转word v6.3.0.2算法分析 [文章作者]jieliuhouzi[原版下载]www.pdfcword.cn [保护方式]序列号 ...

  2. JSONPath使用

    JSONPath是fastjson在1.2.0之后支持的.JSONPath是一个很强大的功能.关于JSONPath的介绍请查看官方文档 JSONPath. 官方文档上给出了详细的说明以及使用.但是官方 ...

  3. 机房收费系统——转换list泛型时,字段名称不正确应出现故障

    因为之前对泛型研究了一番,所以就開始尝试着在机房收费系统重构中增加了泛型的使用. 可是到了做学生查看剩余金额这个功能的时候,还是依照之前的方法做的,可是在载入数据的时候班级这个框就没有显示出来--然后 ...

  4. Android官方技术文档翻译——Gradle 插件用户指南(5)

    昨晚把第五章未译完的几句话攻克了.只是第六章没怎么译,明后天又是周末,假设周一前第六章翻译完的话,周一再发第六章. 本文译自Android官方技术文档<Gradle Plugin User Gu ...

  5. 命令行界面下使用emca安装配置Oracle Database Control实战

    作为命令行忠有用户,server端软件的运维都倾向于使用命令或 脚本完毕,非常讨厌资源占用非常大的GUI.Oracle数据库作为重要的server端软件.其安装运维自然也全然支持纯命令行方式.虽然同一 ...

  6. 做ppt经常使用站点

    推荐一下做PPT经常使用的站点 一.字体 http://font.chinaz.com 二.ppt模板:演界网 三.图标 http://www.easyicon.net/

  7. 《从Paxos到Zookeeper:分布式一致性原理与实践》【PDF】下载

    内容简介 Paxos到Zookeeper分布式一致性原理与实践从分布式一致性的理论出发,向读者简要介绍几种典型的分布式一致性协议,以及解决分布式一致性问题的思路,其中重点讲解了Paxos和ZAB协议. ...

  8. 以深圳.NET俱乐部名义 的技术交流会圆满成功

    2017年5月13日的深圳下着暴雨,一场以深圳.NET俱乐部名义的.NET技术交流会在微软Build 2017刚闭幕时在罗湖布吉路与翠山路交界处富基PARK国际6F举办,这次交流以微软Build 20 ...

  9. Java I/O---序列化接口Serializable

    1.JDK API 中关于Serializable的描述 public interface Serializable 类通过实现 java.io.Serializable 接口以启用其序列化功能.未实 ...

  10. Java8函数之旅 (八) - 组合式异步编程

    前言 随着多核处理器的出现,如何轻松高效的进行异步编程变得愈发重要,我们看看在java8之前,使用java语言完成异步编程有哪些方案. JAVA8之前的异步编程 继承Thead类,重写run方法 实现 ...