Linux命令的格式:
1
|
command
options arguments
|
命令 选项 参数
选项:调整命令的执行特性的;
选项可以有多个;多个选项之间必须以空格分隔;
短选项:-char
长选项:--word
短选项可以合并;长选项一般不可以合并;
有些选项需要有参数;
命令参数:命令的作用对象;
有些命令可以带多个参数;各参数间需要使用空格分隔;
=============================================
# tty命令:显示当前终端对应终端设备文件
=============================================
# who命令:查看当前系统上登录的所有用户及其信息
=============================================
# Ctrl+c: 取消当前程序
=============================================
#type 命令判断命令的类型:
[root@localhost ~]# type cd cdis a shell builtin->系统内建命令 [root@localhost ~]# type basename basenameis /bin/basename->系统外部命令
=============================================
#which 命令 ->命令查看一个可执行程序的具体路径
=============================================
Shift+PageUp/PageDown:当前终端翻屏
=============================================
#tree :以树状结构查看目录内容结构.
================系统管理类命令====================
#shutdown [option]...TIME
-r:重启
-h:关机
-c:取消重启或关机命令
时间格式:
now
+#: #分钟以后
hh:mm
reboot
halt -p
poweroff
================目录管理类=======================
命令行展开:能够把一个特殊字符转成别的字符;
~:指定用户的家目录;
{,,,}:展开为多个条目
工作目录切换:
[root@localhost ~]# cd ~user1 ->切换到用户user1的家目录; [root@localhost user1]# cd ->切换到当前用户的家目录; [root@localhost ~]# cd - ->切换回上次所在的目录; /home/user1 [root@localhost user1]#
路径:
相对路径中:
. 当前目录
.. 父目录
[root@localhost ~]# basename /usr/local/ ->取路径基名 local [root@localhost ~]# dirname /usr/local/ ->取目录名 /usr [root@localhost ~]#
#pwd :print working directory 打印当前工作目录位置
#mkdir:make directory 创建目录
#mkdir �Cp -v 一次性创建多级目录
-p:先创建父目录
-v: 显示详细信息
#rmdir:删除空目录
#rmdir �Cp
#rm �Cr 目录名
例如:1.创建多级目录:
[root@station23 ~]# mkdir /a/b/c/d mkdir: cannot create directory `/a/b/c/d': No such file or directory ->系统提示不能创建,要创建目录d就先要创建c,要创建c就必须要目录b,以此类推. [root@station23 ~]# mkdir -pv /a/b/c/d ->加上-p、-v后的结果. mkdir: created directory `/a' mkdir: created directory `/a/b' mkdir: created directory `/a/b/c' mkdir: created directory `/a/b/c/d' [root@station23 ~]# tree /a ->通过tree查看目录a的结构. /a └── b └── c └── d 3 directories, 0 files [root@station23 ~]#
2.通过命令行展开创建多级目录:
[root@station23 ~]# mkdir -pv /x/{a/{m,n},b,c} ->命令行展开方式. mkdir: created directory `/x' mkdir: created directory `/x/a' mkdir: created directory `/x/a/m' mkdir: created directory `/x/a/n' mkdir: created directory `/x/b' mkdir: created directory `/x/c' [root@station23 ~]# tree /x ->查看x目录结构. /x ├── a │ ├── m │ └── n ├── b └── c 5 directories, 0 files [root@station23 ~]#
=============================================
Linux的文件类型:
Linux的文件类型:
1.普通文件 开头用 “-”表示的
2.目录文件 开头用“d”表示的
3.符号链接文件(软连接文件) 开头用“l”表示
4.设备文件 块设备,用 d 表示。按照随机存取。通常一次存取一个块。(硬盘)
字符设备,用 c 表示,通常按照线性(有顺序)的方式进行存储,一次存取的一个单位是字节。比如键盘,鼠标显示器等。字符存储是串行的。
5.套接字文件 开头用 “s” 表示
6.命令管道文件 开头用“p” 表示
==================时间管理类====================
时间日期显示/设置
1
2
3
|
#date 显示当前系统时间
#date MMDDhhmm[CC]YY.ss 设定系统时间
#date [+FORMAT] 时间小写 日期大写
|
%Y:年份(全/数字)
%y:年份(简/数字)
%m:月(数字)
%h:月(英文)
%d:日(数字)
%H:时(数字)
%M:分(数字)
%S:秒(数字)
%D:月/日/年
%F:年-月-日
%T:时:分:秒
%s:时间戳timestamp
unix元年:1970-01-01 00:00:00
#cal 显示当前月份月历
1
2
3
4
5
6
7
8
9
|
[root@localhost ~]# cal
February
2014
Su Mo Tu We Th Fr Sa
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
[root@localhost ~]#
|
#cal #### 显示####年整年年历
Linux有两个时钟:
硬件时钟:硬件时钟是存储在CMOS里的时钟
软件时钟:开机时读取硬件时钟
#hwclock -s ――>以硬件时钟为准同步 ――>hctosys
#hwclock -w――>以软件时钟为准同步 ――>systohc
Linux文件时间戳:
# touch:修改文件时间戳
access time,atime 访问时间:
modify time,mtime 修改时间:
change time,ctime 改变时间:元数据发生改变的时间
-c 不创建空文件
-a 仅修改访问时间
-m 仅修改修改时间
-t STAMP :[CC]YYMMDDhhmm.ss
#stat命令 查看元数据属性(包含时间戳)
[root@station23 ~]# stat /etc/passwd File: `/etc/passwd' Size: 1683Blocks: 8IO Block: 4096regular file Device: fd00h/64768d Inode: 1181687Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2014-02-1317:23:36.428995230+0800->访问时间 Modify: 2014-02-1317:23:26.969997161+0800->修改时间 Change: 2014-02-1317:23:26.971997161+0800->改变时间 [root@station23 ~]#
=============================================
#ls
list directory contents
-a 显示所有文件,包括隐藏文件
--color=[default | never | auto]
-l 以长格式显示文件属性
l rwxrwxrwx. 1 root root 2 Feb 12 09:49 rvi-> vi
文件类型 文件权限 硬连接数 属主 属组 最近一次修改时间 文件名 原始文件
-d 显示目录自身的属性,常与-l同时使用
-r 逆序显示
-R 递归显示
-h 以易读方式显示文件大小
-i index node 显示文件索引节点号
=============================================
文本文件查看:
#cat 命令: cat + 文件
concatinate, dump
功能1,连接,cat可以将多个文件连接到一起。显示出来。
功能2,dump.倾倒式的查看,瞬间翻至最后一页。
但在某些场景下是很有用的,比如将某些文件显示出来并将它重定向到某地
比如某文件:cat /etc/sysconfig/network这个文件很小。
cat会直接查看,查看完后直接退出查看器。
-n : cat可以在显示的时候显示行号,行号不是文件本身的内容
-E : 用于显示行结束符,会加入 $ 符,是Linux中的行结束符。Windows的行结束符比Linux多1
tac是反着倒……
cat的特殊用法
cat >>haha<<EOF (eof标示)
> 123
> 456
> 789
> EOF
从EOF开头,到EOF结尾的东西,追加到haha中。
#more 命令:more + 文件
more,可以分屏显示内容,并且给出显示的百分比
more的向前翻腾是有问题的,用B键可以使用向前翻页,所以很多教材只介绍more可以向后翻页,不能向前翻
more 翻到最后之后会自动退出。所以这也是为什么他不能向前翻的最重要原因
#less 命令: less + 文件
less可以向前翻,而且翻完之后不会自动退出,会显示
[END]
实际上,man命令其实调用了less命令的查看方式,所以man支持的,less都支持。
less命令也是将来用的最多的命令之一。
#tail\head命令 :
head 命令用于查看文件前 N行 (默认为10行)
tail 命令用于查看文件的后 N行(默认为10行)
head -n 20
head -20 都代表看前20行
tail -n 22 /var/log/messages
tail -22
tail -f 命令,查看文件而不退出,并且实时显示信息。
不想看了,用ctrl+C,则退出。
*当你写了一个命令不想执行的话,用CTRL+C直接返回。
*/var/log/messages 是系统日志,我们经常用tail -f 命令查看其内容
=============================================
如何为echo 命令加上颜色。
ANSI color,颜色种类比较少。只有7种。显示的时候需要用控制符
"\033" : 表示是 ESC 键的 十六进制码
3开头表示是前景色
4开头表示是背景色
0是黑色
7是白色
1 红 色
2 绿色
echo -e “\033[31mThis is a desk;\033[0m"
\033[0m : 不管是什么控制,颜色,字体,斜体,粗体,都用0m结束
可以实现对esc键的直接键入
按ctrl+V 然后按 ESC键
则直接用二进制表示ESC 会显示 ^[
echo -e "^[32mThis is a desk;^[0m"
-------------------------
想让背景和前景都实现
echo -e "\033[31;42mMy color.\033[0m"
echo -e "\033[1;31mMy color.\033[0m"
第一种:单独。
0:正常模式
1 :加粗
2 :
5 : 闪烁
8 : 跟背景色一样。用于隐藏文字
=============================================
文件操作命令:
#touch ->创建空文件以及修改文件时间戳的功能.
#cp
SRC,DEST
#cp SRC DEST
假如SRC是一个文件:
如果目标是一个文件且存在:覆盖
如果目标文件不存在:创建新文件,目标同源
如果目标存在,且是个目录:复制源至目标目录中,并保持原名
cp SRC... DEST
假如SRC是多个文件:
如果目标存在,且是一个文件:复制无法进行
如果目标存在,且是一个目录:复制各文件至目标目录中,并保持原名
如果目标不存在:复制无法进行
如果SRC只有且一个且是目录: -r
如果目标是一个文件且存在:失败
如果目标文件不存在:创建新目录
如果目标存在,且是个目录:复制源目录至目标目录中,且保持原名
cp命令常用选项:
-r:递归.
-i:interactive 交互
-d:当源为链接文件时,复制链接文件的本身,而非源文件
-a:相当于-dr
-p:保留原有属性
-f:强制覆盖
#mv:移动,用法跟cp相近
可以直接移动目录,而无需-r选项;
源和目标在同一个目录下的操作为改名
#rm:移除文件
-r:递归.
-f:强制删除.
-rf:删除非空目录.
=================文本处理类==================
#wc [optino] [file]... -> world connt,
-l :统计行数
-c : 统计字节数
-w : 统计单词数
#tr 转换字符或删除字符
tr '集合1' '集合2'
tr -d '字符集合' 删除通过后的字符
#cut:
-d 字符:指定分隔符
-f#:指定要显示的字段
单个数字:一个字段
逗号分隔的多个数字:指定多个离散字段
-:连续字段。如3-5;
#sort [option] file...->按字符进行
-f:忽略字符大小写
-n:数值进行排序
-t:指定分隔符
-k#:指定分隔后进行比较字段
-u:重复的行,只显示一次;
#uniq 移除重复(连续相同)的行
-c:显示每一行出现的次数;
-d:显示至少重复过一次的行;
-u:显示不曾重复的行
====================================================================
#echo :显示 一行文本
-n :表示不显示换行符
-e : 能解释转义字符,比如显示颜色 (用于表示做控制符用的的叫转义字符)
echo -e “How are you?\n” 则\n会被编译成换行
本文出自 “一叶知秋” 博客,转载请与作者联系!