Linux 命令

查看文件内容

stat

file

查看文件类型。

查看整个文件

cat

-n 给所有内容加上行号
-b 给只有文本的行加上行号

more

cat 命令的主要缺陷是,一旦运行了 cat 命令,就无法控制后面的操作了。为了解决这个问题,开发人员写了 more 命令。more 命令会显示文本文件的内容
,但会在显示每页数据之后停下来。

less

more 命令只支持文本文件中基本的移动。如果要更多高级功能,要用 less 命令。
尽管从名字上看上去,它不会像 more 命令一样高级,但 less 命令的命名实际上是个文字游戏(从俗语 “less is more” 得来),它实为 more 命令的升级版本。
它提供了一些极为使用的在文本文件中前后翻动的功能,还有一些极先进的搜索功能。

less 命令也可显示文件的内容,而不用读取整个文件。这点是 cat 命令和 more 命令在读取大文件时的明显缺陷。

查看部分文件

通常用户要查看的数据要么在文本文件的开头,要么在文本文件的末尾。如果这些数据是在一个大型文件中,那你就得等 cat 或 more 加载完整个文件之后才能看到内容。如果
数据是在文件的末尾(比如日志文件),你可能需要翻成千上万行的文本才能到最后的内容。好在 Linux 有解决这两个问题的专用命令。

tail

tail 命令会显示文件末尾部分的内容。默认情况下它会显示文件的末尾10行,你也可以通过参数来指定显示的行数。
-f 参数是 tail 命令的一个突出的特性,它允许你在其他进程使用该文件时查看文件的内容。tail 名利观会保持活动状态并不断地显示添加到文件中的内容。这是实时监测系统日志的绝妙方式。

head 命令会显示文件开头那些行的内容,默认情况下它会显示10行文本。

监测进程

ps

-e 显示所有进程
-f 显示完整格式的输出

top

kill

监测磁盘空间

挂载存储媒体

Linux 系统将所有的磁盘都挂载到一个虚拟目录下。在使用新的存储媒体之前,你需要把它放到虚拟目录下。这些工作成为挂载(mounting)。

mount

输出当前系统上挂载的设备列表。

umount

从 Linux 系统上移除一个可移动设备时,不能直接从系统上移除,而应该先卸载它。

Linux 上不能直接弹出已挂在的CD,应该先卸载它,然后再去尝试弹出。

df(disk free)

显示所有已挂在磁盘的使用情况。

du

显示当前目录下所有文件、目录和子目录的磁盘使用情况。

处理数据文件

sort

对数据进行排序。默认情况下,sort 命令按你为这个回话指定的默认语言的排序规则来对文本文件中的数据行排序。
但 sort 命令会把数字当作字符而执行标准的字符排序,这时可以使用 -n 参数,它会告诉 sort 命令把数字识别成数字而不是字符,并且将它们按值排序。

grep

grep 命令的命令行格式:grep [options] pattern [file]

压缩数据

tar

tar 命令最开始是用来将文件写到磁带设备上归档的,然而他也能把输出写到文件里。

下载了开源软件之后,你会经常看到文件名以 .tgz 结尾,这些事 gzip 压缩过的 tar 文件,可以使用 tar -xvzf filename.tgz 来解压。

环境变量

bash shell 用一个称作环境变量(environment variables)的特性来存储有关 shell 回话和工作环境的信息。
在 bash shell 中,环境变量分为两类:

  • 全局变量
  • 局部变量

系统信息相关命令

显示主机名

1
hostname

显示主机 IP

1
hostname -i

修改主机名称

1
hostname newHostname

这种修改方式只有当前有效,等服务器重启后 hostname 就会失效,回到原来的 hostname。

永久修改 hostname:

1
2
3
4
5
6
7
8
9
10
# Debian / Ubuntu
vim /etc/hostname
# Redhat / CentOS / Fedora
vim /etc/sysconfig/network

# 设置 hostname
HOSTNAME=yourhostname

# 重启后查看
hostname newHostname

刷新 hosts

1
sudo /etc/init.d/network restart

VIM 操作

Linux下采用VI编辑器删除复制或移动多行文本内容

删除多行

单行删除:1(待删除行号)d

多行删除:1,10d

删除光标所在行:dd

删除以当前行开始的 n 行:ndd

删除以当前字符开始的一个字符:dw

删除以当前字符开始的 n 个字符:ndw

删除以当前字符开始的一行字符:d$、D

删除到下一句的开始:d)

删除到下一段的开始:d}

删除 2 行:d回车

复制多行

任务:将第9行至第15行的数据,复制到第16行
方法1:(强烈推荐)
:9,15 copy 16 或 :9,15 co 16
由此可有:
:9,15 move 16 或 :9,15 m 16 将第9行到第15行的文本内容移动到第16行的后面

方法2:
光标移动到结束行,输入ma
光标移动到起始行,输入y’a
光标移动到需要复制的行,输入p,行前复制则输入大写P

方法3:
把光标移到第9行 shift + v
再把光标移动到第15行 ctrl + c
再把光标死去到第16行 p

方法4:
光标移动到起始行,输入ma
光标移动到结束行,输入mb
光标移动到粘贴行,输入mc
然后输入:’a,’b, co ‘c 把co换成m就是剪切
若要删除多行,则输入:’a,’b de

vi设置自动缩进:set smartindent
vi设置显示行号:set number 或 set nu

分享到:
Disqus 加载中...

如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理