linux命令pickup,Linux 基本命令

刚开始学习Linux,因为从前没有接触过这方面的东西,所以做些记录为以后学习查找时方便一下。

1. 命令查看快捷键:j 键:向下滚动一行

k 键:向上滚动一行

空格键:向后翻一页

b 键: 向前翻一页

q键: 退出

2. man:用来看一个命令的帮助文档。

格式: man [options] command

如:查看命令ls的帮组文档,

[root@localhost ~]# man ls

则会显示结果如下:LS(1)                User Commands                           LS(1)

NAME

ls - list directory contents

SYNOPSIS

ls [OPTION]... [FILE]...

DESCRIPTION

List information about the FILEs (the current directory by default).   Sort entries alphabetically if none of -cftuvSUX nor --sort.

Mandatory arguments to long options are mandatory for short options

too.

-a, --all

do not ignore entries starting with .

查看快捷键可参考1内容。

在查看man帮助文档时,在首行会出现类似"LS(1)"字样,LS表示命令,括号中的1表示章节数。

1. 用户可操作的命名

2. 系统调用

3. 库调用

4. 设备文件

5. 文件格式

6. 游戏

7. 杂项

8. 管理员命令

如在查看fdisk命令时,会发现它属于第8章节。[root@localhost ~]# man fdisk

FDISK(8)         Linux Programmer's Manual            FDISK(8)

NAME

fdisk - Partition table manipulator for Linux

3. su命令:switch user,切换用户命令。

第一次接触Linux时,这个命令让我小郁闷了一下,完全不懂。

3.1  管理员用户    到    普通用户

管理员切换到普通用户,有两种命令格式。

1. su - username,登录切换。

2. su username,非登录切换。

第一种,切换时会加载一些配置等信息,而第二种则不会。所以如果使用第二种格式切换用户,有些命令可能无法使用。所以推荐使用第一种命令格式,带符号“-”。[root@localhost ~]# su - mageedu1

[mageedu1@localhost ~]$

从root切换到普通用户是不需要用户密码。

3.2 普通用户    到    管理员

直接 su命令即可,然后输入root密码。[mageedu1@localhost ~]$ su

Password:

[root@localhost mageedu1]#

切换用户操作完毕后,使用exit命令登出当前用户,返回上一用户。

4. ls:查看文件与目录命令。

通过man命令,可以查看ls命令的所有可选参数。

可以看到有很多可选参数,但是我们常用的也就只有3个。

-a:查看全部文件连同隐藏文件( . 开头的文件)

-d:仅列出目录本身,而不是目录的文件数据。

-l:  列出长数据串,包含文件的属性、时间戳与权限等数据。[root@localhost ~]# ls

anaconda-ks.cfg  install.log  install.log.syslog  sbin

[root@localhost ~]# ls -a

.              .bash_logout   .cshrc    .viminfo         install.log.syslog

..             .bash_profile  .lesshst  anaconda-ks.cfg  sbin

.bash_history  .bashrc        .tcshrc   install.log

[root@localhost ~]# ls -l

total 24

-rw-------. 1 root root  903 Jun 13 20:15 anaconda-ks.cfg

-rw-r--r--. 1 root root 9072 Jun 13 20:15 install.log

-rw-r--r--. 1 root root 3161 Jun 13 20:14 install.log.syslog

drwxr-xr-x. 2 root root 4096 Jun 19 11:50 sbin

[root@localhost ~]# ls -d /tmp

/tmp

[root@localhost ~]# ls -ald /tmp

drwxrwxrwt. 17 root root 4096 Jun 23 11:48 /tmp

5. tree:以树状图逐级列出目录的内容命令

直接执行tree命令时,可能会提示找不到该命令,在可以连往的情况下可以通过如下方式进行安装:[root@localhost ~]# yum -y install tree

无网络情况,暂时我也不会,以后再说吧。

通过man命令查看tree的帮助文档,可以看到所有可选参数,经常使用的并不多。

-a:显示所有文件和目录,默认tree不显示隐藏文件,该参数可修改此特性。

-d:只显示目录名称,而非内容

-f:以完整路径格式显示

如果通过命令查看时出现乱码的话,可以通过执行

export LANG=en

命令修正。[root@localhost ~]# tree /root

/root

|-- anaconda-ks.cfg

|-- install.log

|-- install.log.syslog

`-- sbin

1 directory, 3 files

[root@localhost ~]# tree -a /root

/root

|-- .bash_history

|-- .bash_logout

|-- .bash_profile

|-- .bashrc

|-- .cshrc

|-- .lesshst

|-- .tcshrc

|-- .viminfo

|-- anaconda-ks.cfg

|-- install.log

|-- install.log.syslog

`-- sbin

1 directory, 11 files

[root@localhost ~]# tree -d /root

/root

`-- sbin

1 directory

[root@localhost ~]# tree -f /root

/root

|-- /root/anaconda-ks.cfg

|-- /root/install.log

|-- /root/install.log.syslog

`-- /root/sbin

1 directory, 3 files

至于其他参数,如果有需要,可以man一下查看,相信这点英语水平难不倒你的。

6. pstree:查看进程信息命令

-a:显示所有进程的所有详细信息,相同进程名可以压缩显示。

-p:显示所有进程的进程ID。

其他参数,man pstree自行查看吧。[root@localhost ~]# pstree

init-+-auditd---{auditd}

|-crond

|-dhclient

|-master-+-pickup

|        `-qmgr

|-6*[mingetty]

|-rsyslogd---3*[{rsyslogd}]

|-sshd-+-sshd---bash---pstree

|      `-sshd---sshd---bash---su---bash

`-udevd---2*[udevd]

[root@localhost ~]# pstree -a

init

|-auditd

|   `-{auditd}

|-crond

|-dhclient -1 -q -lf /var/lib/dhclient/dhclient-eth0.leases -pf/var/run/dhcl

|-master

|   |-pickup -l -t fifo -u

|   `-qmgr -l -t fifo -u

|-mingetty /dev/tty1

|-mingetty /dev/tty2

|-mingetty /dev/tty3

|-mingetty /dev/tty4

|-mingetty /dev/tty5

|-mingetty /dev/tty6

|-rsyslogd -i /var/run/syslogd.pid -c 5

|   |-{rsyslogd}

|   |-{rsyslogd}

|   `-{rsyslogd}

|-sshd

|   |-sshd

|   |   `-bash

|   |       `-pstree -a

|   `-sshd

|       `-sshd

|           `-bash

|               `-su

|                   `-bash

`-udevd -d

|-udevd -d

`-udevd -d

[root@localhost ~]# pstree -p

init(1)-+-auditd(966)---{auditd}(967)

|-crond(1102)

|-dhclient(917)

|-master(1092)-+-pickup(4723)

|              `-qmgr(1101)

|-mingetty(1115)

|-mingetty(1117)

|-mingetty(1119)

|-mingetty(1121)

|-mingetty(1126)

|-mingetty(1128)

|-rsyslogd(982)-+-{rsyslogd}(983)

|               |-{rsyslogd}(984)

|               `-{rsyslogd}(985)

|-sshd(1016)-+-sshd(2283)---bash(2287)---pstree(5236)

|            `-sshd(4846)---sshd(4850)---bash(4851)---su(4873)---bash(48+

`-udevd(384)-+-udevd(1123)

`-udevd(1124)

[root@localhost ~]#

7. file:查看文件类型命令

可以用它来查看某个文件的基本数据,如食肉ASCII或者data文件等。[root@localhost ~]# file .bashrc

.bashrc: ASCII text

表明.bashrc是ASCII的纯文本文件。[root@localhost ~]# file /usr/bin/passwd

/usr/bin/passwd: setuid ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped

ELF:Linux可执行程序文件类型。

命令输出表明passwd输入x86-64硬件平台,使用GUN/Linux 2.6.18核心的动态链接库。

8. cat:连接文件并输出到显示器,不会更改文件内容

该命令后可跟多个文件,显示是一同显示到屏幕上去。

-n:显示时增加行号,不过文件本身并没有行号,是cat自行添加并显示出来

-A:显示所有内容,包括结束符,Linux中$符号表示换行符,与Window不同,所以Windows中文件        copy到Linux中可能会存在换行符的问题。[root@localhost ~]# cat -An /etc/passwd

1root:x:0:0:root:/root:/bin/bash$

2bin:x:1:1:bin:/bin:/sbin/nologin$

3daemon:x:2:2:daemon:/sbin:/sbin/nologin$

4adm:x:3:4:adm:/var/adm:/sbin/nologin$

5lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin$

6sync:x:5:0:sync:/sbin:/bin/sync$

7shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown$

8halt:x:7:0:halt:/sbin:/sbin/halt$

9mail:x:8:12:mail:/var/spool/mail:/sbin/nologin$

10uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin$

11operator:x:11:0:operator:/root:/sbin/nologin$

12games:x:12:100:games:/usr/games:/sbin/nologin$

13gopher:x:13:30:gopher:/var/gopher:/sbin/nologin$

14ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin$

15nobody:x:99:99:Nobody:/:/sbin/nologin$

16vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin$

17saslauth:x:499:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin$

18postfix:x:89:89::/var/spool/postfix:/sbin/nologin$

19sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin$

20gentoo:x:500:500::/home/gentoo:/bin/bash$

21mageedu1:x:501:501::/home/mageedu1:/bin/bash$

22mageedu1_sh:x:3001:3001::/home/mageedu1_sh:/bin/bash$

9. tac:与cat一样,不过是逆序显示

可选参数也与cat相同。

10. more:同样是查看文件内容,不过more可以一页一页的翻看,对于内容较多的一屏幕放不下的可以选择该命令。

对应的几个查看快捷键:

空格键:向下翻一页

Enter:向下滚动一行

q键:退出

11. less:与more一样,不过比more有更多功能,more中,我们只能向后翻看,less则也可以向前翻看。

对应快捷键:

空格键:向下翻一页

PageDone:向下翻一页

PageUp:向上翻一页

j键:向下滚动一行

k键:向上滚到一行

/字符串:向下查找“字符串”内容

?字符串:向上查找“字符串”内容

12. head:后跟文件名,默认查看前10行内容

-n:查看前n行内容

常用的也就这个可选参数。[root@localhost ~]# head /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

sync:x:5:0:sync:/sbin:/bin/sync

shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

halt:x:7:0:halt:/sbin:/sbin/halt

mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin

[root@localhost ~]# head -2 /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

13. tail:后跟文件名,默认查看后10行内容

-n:查看后n行内容

-f:显示文件后不退出,监视文件变化情况,如果有新内容增加,则立刻显示出来,用它来监视log日志等常变化文件很有用,需熟记。

[root@localhost ~]# tail /tmp/passwd

gopher:x:13:30:gopher:/var/gopher:/sbin/nologin

ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

nobody:x:99:99:Nobody:/:/sbin/nologin

vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin

saslauth:x:499:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

gentoo:x:500:500::/home/gentoo:/bin/bash

mageedu1:x:501:501::/home/mageedu1:/bin/bash

mageedu1_sh:x:3001:3001::/home/mageedu1_sh:/bin/bash

[root@localhost ~]# tail -2 /tmp/passwd

mageedu1:x:501:501::/home/mageedu1:/bin/bash

mageedu1_sh:x:3001:3001::/home/mageedu1_sh:/bin/bash

现在我编辑/tmp/passwd文件,新添加一行内容“The new line test.“,则tail命令会把新增内容立刻显示出来。[root@localhost ~]# tail -2f /tmp/passwd

mageedu1:x:501:501::/home/mageedu1:/bin/bash

mageedu1_sh:x:3001:3001::/home/mageedu1_sh:/bin/bash

The new line test.

14. cp

命令格式:

cp [options] source destination

cp [options] source1 source2 source3 ... directory

说明:

1. 如果source有多个文件

如果目标存在,且是个文件,则复制无法进行。

如果目标存在,且是目录,复制各文件至目标目录中,并保持原名。

如果目标不存在,则无法复制。

2. 如果源是目录或包含目录

源是多个文件则与1相同。

源为1个且是目录

如果目标存在,且是目录,则复制失败。

如果目标不存在,则创建新目录,并且拷贝源文件内容到目标路径。

如果目标存在,且是个目录,则复制原目录至目标目录,且保持原名。

常用可选参数:

-r:递归复制,可用于目录的复制。

-i:若目标文件已经存在,在覆盖式会有提示操作。

-a:相当于-pdr的意思。

-p:连同文件的属性一同复制。

-d:若源文件为连接文件的属性,则复制连接文件属性而非文件本身。

15. touch:修改文件时间或创建空文件。

修改文件时间可选参数:

-a:仅修改访问时间。

-c:仅修改文件的时间,若文件不存在,不会创建新文件。

-d:后面可以跟欲修改的日期而不是当前日期,也可以使用 ---date="STRING",string格式可             通过man自行查看一下。

-m:仅修改mtime。mtime为文件内容修改时间。

-t:后面可跟自定义时间取代当前时间,时间格式为[[CC]YY]MMDDhhmm[.ss]。

如果touch命令后跟的文件不存在,则会创建一个空的文件。

16. mv:移动文件或目录,或者重命名文件。

命令格式与cp类似。

可选参数:

-f:force,强制的意思,如果目标文件已经存在,不会询问而直接覆盖。

-i:若目标文件已经存在,会询问是否覆盖

-u:如果目标文件存在,则会比较两个文件的新旧,如果原文件比较新,才会覆盖。

另一个常用的功能是,使用mv来重命名文件。创建一个目录,将一个文件移动到新目录中

[root@localhost ~]# cd /tmp

[root@localhost tmp]# mkdir mvtest

[root@localhost tmp]# cd mvtest/

[root@localhost mvtest]# ll

total 0

[root@localhost tmp]# mv bashrc /tmp/mvtest/

[root@localhost tmp]# ll /tmp/mvtest/

total 4

-rw-r--r--. 1 root root 194 Jun 24 06:39 bashrc

将该文件重命名位newbashrc

[root@localhost tmp]# mv /tmp/mvtest/bashrc /tmp/mvtest/newbashrc

[root@localhost tmp]# ll /tmp/mvtest/

total 4

-rw-r--r--. 1 root root 194 Jun 24 06:39 newbashrc

17. rm:移除文件或目录

与rmdir不同,rmdir只能删除空目录,限制比较多,不喜欢用。

该命令要小心使用,不要万一执行了 rm -r /,就麻烦了。

可选参数:

-f:force,强制移除文件,且忽略不存在的文件,不会出现警告信息。

-i:在删除前会询问用户是否确定删除。

-r:递归删除,用于目录删除[root@localhost tmp]# rm /tmp/mvtest/

rm: cannot remove `/tmp/mvtest/': Is a directory

[root@localhost tmp]# rm -r /tmp/mvtest/

rm: remove directory `/tmp/mvtest'? yes

18. mkdir:创建目录命令

常用可选参数:

-p:创建连级目录,比如 mkdir /tmp/parentdir/mydir,如果/tmp/parentdir不存在的话,使用该参数会自动创建父目录,然后再创建目录mydir。

-v:显示创建信息[root@localhost tmp]# mkdir -p /tmp/parentdir/mydir

[root@localhost tmp]# tree /tmp

/tmp

|-- parentdir

|   `-- mydir

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值