Linux入门

来源:互联网 发布:四旋翼pid算法 编辑:程序博客网 时间:2024/05/17 22:48

1.目录相关命令
pwd 显示用户当前工作目录的全目录名,例如

ztono@ztono-GE5S:~$ pwd/home/ztono

工作目录改变时输出也随之改变,例如:

ztono@ztono-GE5S:~$ cd ~/tensorflowztono@ztono-GE5S:~/tensorflow$ pwd/home/ztono/tensorflow

cd 改变目录
Syntax:cd directory_name
可选的目录名包括:
(1) 目录名,转到当前目录下的子目录。
(2) .. 表示转到当前目录的父目录。
(3) / 表示转到根目录。
(4) 没有选项时,转到用户的主目录。
例如:

ztono@ztono-GE5S:~/tensorflow$ cdztono@ztono-GE5S:~$ pwd/home/ztono

rmdir和mkdir相对,一个是删除目录,一个是创建目录
(1) 删除子目录时,要求被删除的目录中不存在文件或子目录,否则无法删除。
(2) 若被删除的目录中有文件或子目录,请参考命令rm –rf directory_name。
2.文件相关命令
列出文件目录
Syntax:ls [option] directory_name
目录名为空时则显示主目录
可选的选项:
-a列出所有文件,包括以点开头的隐含文件。
-l按长格式列出文件名,包括文件类型标识,权限,链接数,文件主名,文件组名,字节数,日期。
-r列出包括子目录下所有文件
-g在长格式中给出用户组的标识。
-t按文件生成日期排序。
例如:

ztono@ztono-GE5S:~$ ls -l 总用量 76drwxrwxr-x  2 ztono ztono 4096 1116 21:18 bin-rw-r--r--  1 ztono ztono 8980 105 01:02 examples.desktop-rw-r--r--  1 root  root   268 107 00:22 firefox.desktopdrwxrwxr-x  3 ztono ztono 4096 108 15:50 IdeaProjects-rw-r--r--  1 root  root  1109 108 20:18 <invalid path>-rw-r--r--  1 root  root   176 108 20:20 <invalid path>.layoutlrwxrwxrwx  1 root  root    13 1116 11:40 libcudnn.so -> libcudnn.so.5lrwxrwxrwx  1 root  root    48 1116 11:40 libcudnn.so.5 -> /home/ztono/下载/cuda/lib64/libcudnn.so.5.1.10drwxrwxr-x  8 ztono ztono 4096 1116 10:28 numpydrwxrwxr-x  8 ztono ztono 4096 108 15:51 Qt5.9.2drwxrwxr-x  7 ztono ztono 4096 1116 12:02 tensorflowdrwxr-xr-x  2 ztono ztono 4096 105 01:16 公共的drwxr-xr-x  2 ztono ztono 4096 105 01:16 模板drwxr-xr-x  2 ztono ztono 4096 105 01:16 视频drwxr-xr-x  3 ztono ztono 4096 107 00:28 图片drwxr-xr-x  4 ztono ztono 4096 105 15:07 文档drwxr-xr-x 10 ztono ztono 4096 1117 09:33 下载drwxr-xr-x  2 ztono ztono 4096 105 01:16 音乐drwxr-xr-x  4 ztono ztono 4096 1117 09:10 桌面

下面是各个字段的详解:
第1字段: 文件属性字段
文件属性字段总共有10个字母组成;
第1个字符代表文件的类型。
“-”表示该文件是一个普通文件
“d”表示该文件是一个目录,字母”d”,是dirtectory(目录)的缩写
注意:目录或者是特殊文件,这个特殊文件存放其他文件或目录的相关信息
“l”表示该文件是一个链接文件。字母”l”是link(链接)的缩写,类似于windows下的快捷方式
“b”的表示块设备文件(block),一般置于/dev目录下,设备文件是普通文件和程序访问硬件设备的入口,是很特殊的文件。没有文件大小,只有一个主设备号和一个辅设备号。一次传输数据为一整块的被称为块设备,如硬盘、光盘等。最小数据传输单位为一个数据块(通常一个数据块的大小为512字节)
“c”表示该文件是一个字符设备文件(character),一般置于/dev目录下,一次传输一个字节的设备被称为字符设备,如键盘、字符终端等,传输数据的最小单位为一个字节。
“p”表示该文件为命令管道文件。与shell编程有关的文件。
“s”表示该文件为sock文件。与shell编程有关的文件。
第1字符的后面9个字母表示该文件或目录的权限位。
r表是读 (Read) 、w表示写 (Write) 、x表示执行 (eXecute)
其中前三个表示文件拥有者的权限,中间三个表示文件所属组拥有的权限,最后三个表示其他用户拥有的权限。
第2字段:文件硬链接数
如果一个文件不是目录,此时这一字段表示这个文件所具有的硬链接数,
第2字段的值为1,说明这个文件只有exit这一个文件名。即只有一个指向该链接的硬链接。
如果使用ln,做一个指向该文件的硬链接再查看该文件,该文件的第2字段就会变成2。
如果是一个目录,则第2字段表示该目录所含子目录的个数。
新建一个空目录,这个目录的第二字段就是2,表示该目录下有两个子目录。为什么新建的目录下面会有两个子目录呢?
因为每一个目录都有一个指向它本身的子目录”.” 和指向它上级目录的子目录”..”,这两个默认子目录是隐藏的。但用ls -a可以看到
每次在目录下新建一个子目录,该目录第2字段的值就增1,但是新建一个普通文件该字段值不增加。
第3字段:文件(目录)拥有者
第4字段:文件(目录)拥有者所在的组
第5字段: 文件所占用的空间(以字节为单位)
如果是文件夹的话也是文件夹本身的大小。
第6,7,8字段:文件(目录)最近访问(修改)时间,分别为月,日,小时
第7字段:文件名
显示文件内容:
Syntax:cat filename
例如:

ztono@ztono-GE5S:~$ cat'/home/ztono/桌面/Untitled 889.docx' 

就会自动调用相关程序完成文件的打开.
按屏幕显示文件内容
Syntax:more filename
在屏幕显示过程中有功能键。空格键 继续下一屏的输出;回车键 看下一行的输出;q键 跳出more状态;/字符串查询字符串所在处;a键返回到上一屏。
读文件
Syntax:view filename
此命令不能对读出的原文件进行写操作。若对原文件进行了修改,可利用命令“:w newfilename”将修改后的文件写到新文件中。
显示文件头部
Syntax:head [option] filename
缺省 显示文件的头10行。 -i 显示文件的开始 i行。
显示文件尾部
Syntax:tail [option] filename
缺省 显示文件的末10行。 -i 显示文件最后 i行。+i 从文件的第i行开始显示。
拷贝文件
Syntax:
cp [option] filename1 filename2
cp [option] filename… directory
cp -r directory1 directon2
选项:
-i 按提示进行拷贝文件。
-p 按原文件日期进行拷贝。
-r 对子目录下所有文件进行拷贝。
删除文件
Syntax:
mv filename1 filename2
mv filename… direction
mv direction1 direction2
选项:用-r选项时,将删除指定目录的所用文件,包括目录名。
设置文件读取权限
Syntax:
chmod {u|g|o|a}{+|-|=}{r|w|x} filename
chmod [who][op][mode] directory
选项:
u (user) 表示用户本人。
g (group) 表示同组用户。
o (oher) 表示其他用户。
a (all) 表示所有用户。
+ 用于给予指定用户的许可权限。
- 用于取消指定用户的许可权限。
= 将所许可的权限赋给文件。
r (read) 读许可,表示可以拷贝该文件或目录的内容。
w (write) 写许可,表示可以修改该文件或目录的内容。
x (execute)执行许可,表示可以执行该文件或进入目录。
此方法用三位八进制数作任选项,每位数字分别表示用户本人、同组用户、其他用户的权限,其中:
4 (100) 表示可读。
2 (010) 表示可写。
1 (001) 表示可执行。
3.有关登录状态的
显示都谁登录到机器上
Syntax:who
例如:

ztono@ztono-GE5S:~$ whoztono    tty7         2017-11-18 06:06 (:0)

显示当前终端上的用户名
Syntax:whoami
例如:

ztono@ztono-GE5S:~$ whoamiztono

确定命令位置
Syntax:whereis command
确定一个命令的二进制行码、源码及联机手册所在的位置
例如:

ztono@ztono-GE5S:~$ whereis python3python3: /usr/bin/python3.5m /usr/bin/python3.5 /usr/bin/python3 /usr/lib/python3.5 /usr/lib/python3 /etc/python3.5 /etc/python3 /usr/local/lib/python3.5 /usr/include/python3.5m /usr/share/python3 /usr/share/man/man1/python3.1.gz

查找非标准命令
Syntax:which command
查找非标准命令,即使用别名或系统中标准命令集之外的命令。
例如:

ztono@ztono-GE5S:~$ which whereis/usr/bin/whereis

显示日历
Syntax:cal [month] year
例如:

ztono@ztono-GE5S:~$ cal 1998                            1998         一月                    二月                    三月           日 一 二 三 四 五 六  日 一 二 三 四 五 六  日 一 二 三 四 五 六               1  2  3   1  2  3  4  5  6  7   1  2  3  4  5  6  7   4  5  6  7  8  9 10   8  9 10 11 12 13 14   8  9 10 11 12 13 14  11 12 13 14 15 16 17  15 16 17 18 19 20 21  15 16 17 18 19 20 21  18 19 20 21 22 23 24  22 23 24 25 26 27 28  22 23 24 25 26 27 28  25 26 27 28 29 30 31                        29 30 31                       四月                    五月                    六月           日 一 二 三 四 五 六  日 一 二 三 四 五 六  日 一 二 三 四 五 六            1  2  3  4                  1  2      1  2  3  4  5  6   5  6  7  8  9 10 11   3  4  5  6  7  8  9   7  8  9 10 11 12 13  12 13 14 15 16 17 18  10 11 12 13 14 15 16  14 15 16 17 18 19 20  19 20 21 22 23 24 25  17 18 19 20 21 22 23  21 22 23 24 25 26 27  26 27 28 29 30        24 25 26 27 28 29 30  28 29 30                                    31                                                   七月                    八月                    九月           日 一 二 三 四 五 六  日 一 二 三 四 五 六  日 一 二 三 四 五 六            1  2  3  4                     1         1  2  3  4  5   5  6  7  8  9 10 11   2  3  4  5  6  7  8   6  7  8  9 10 11 12  12 13 14 15 16 17 18   9 10 11 12 13 14 15  13 14 15 16 17 18 19  19 20 21 22 23 24 25  16 17 18 19 20 21 22  20 21 22 23 24 25 26  26 27 28 29 30 31     23 24 25 26 27 28 29  27 28 29 30                                 30 31                                                十月                   十一月                   十二月           日 一 二 三 四 五 六  日 一 二 三 四 五 六  日 一 二 三 四 五 六               1  2  3   1  2  3  4  5  6  7         1  2  3  4  5   4  5  6  7  8  9 10   8  9 10 11 12 13 14   6  7  8  9 10 11 12  11 12 13 14 15 16 17  15 16 17 18 19 20 21  13 14 15 16 17 18 19  18 19 20 21 22 23 24  22 23 24 25 26 27 28  20 21 22 23 24 25 26  25 26 27 28 29 30 31  29 30                 27 28 29 30 31   

计算命令执行时间
Syntax:time [command]
计算出的时间为:real是命令在系统驻留的总时间,user是命令消耗CPU的时间,sys是命令I/O所开销的时间。
例如:

ztono@ztono-GE5S:~$ time whereis pythonpython: /usr/bin/python3.5m /usr/bin/python /usr/bin/python2.7-config /usr/bin/python2.7 /usr/bin/python3.5 /usr/lib/python2.7 /usr/lib/python3.5 /etc/python /etc/python2.7 /etc/python3.5 /usr/local/lib/python2.7 /usr/local/lib/python3.5 /usr/include/python3.5m /usr/include/python2.7 /usr/share/python /usr/share/man/man1/python.1.gzreal    0m0.342suser    0m0.008ssys 0m0.024s

显示用户标识
Syntax:id [option] [user]
-a 显示用户名、用户标识及用户所属的所有组
例如:

ztono@ztono-GE5S:~$ id -a ztonouid=1000(ztono) gid=1000(ztono) 组=1000(ztono),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),128(sambashare)

显示主机标示
Syntax:hostid
例如:

ztono@ztono-GE5S:~$ hostid007f0101

显示主机名称
hostname
例如:

ztono@ztono-GE5S:~$ hostnameztono-GE5S

显示进程
Syntax:ps [option]
选项:
-a 列出当前系统中所有进程的信息
-l 显示一个长列表
-e 显示当前运行的每一个进程信息
-f 显示一个完整的列表
例如:

ztono@ztono-GE5S:~$ ps -a  PID TTY          TIME CMD 2688 pts/19   00:00:00 sudo 2689 pts/19   00:00:00 mentohust 6125 pts/20   00:00:00 ps

显示磁盘使用信息
Syntax:df [option]
-i 显示已用和未用的字节数
-k 显示磁盘空间的使用信息
例如:

ztono@ztono-GE5S:~$ df -k文件系统           1K-块     已用     可用 已用% 挂载点udev             8149884        0  8149884    0% /devtmpfs            1634792     9724  1625068    1% /run/dev/sda3      105604224 26534760 73681996   27% /tmpfs            8173940     1064  8172876    1% /dev/shmtmpfs               5120        4     5116    1% /run/locktmpfs            8173940        0  8173940    0% /sys/fs/cgroup/dev/sda4         275395   193083    63573   76% /boot/dev/sda5       33913600 17570808 14597028   55% /home/dev/sdb2          97280    29533    67747   31% /boot/efitmpfs            1634792       56  1634736    1% /run/user/1000

显示文件盘空间
du [option] [filename]
-a 显示所有文件的大小
-s 显示制定目录所占磁盘大小
注意,尽量少用-a,会显示所有文件的…
例如:

ztono@ztono-GE5S:~$ sudo du -s17358876    

显示盘空间限制
Syntax:quota -v [username]
4.网络命令
显示用户信息
finger username
例如:

ztono@ztono-GE5S:~$ finger ztonoLogin: ztono                    Name: ztonoDirectory: /home/ztono                  Shell: /bin/bashOn since Sat Nov 18 08:44 (CST) on tty7 from :0   42 minutes 47 seconds idleNo mail.No Plan.

5.运行参数命令
参数回至标准输出
echo [-n] [arguments]
-n 不向标准输出回送换行符
例如:

ztono@ztono-GE5S:~$ echo 正哥最帅正哥最帅

复制至文件
tee [option] filename
至标准输出的同时复制至文件
选项:
-a 输出时附加到文件中
-i 不理采中断
终止进程
kill [option] pid
选项:
-9 强行终止进程
-17 将进程挂起
-19 将挂起的进程激活
进程睡眠
sleep time
睡眠对象:当前进程
睡眠时间以秒为单位
显示作业状态
jobs [-l]
作业状态为 +表示最近被停止的作业,-表示先前的作业,exit 1表示退出的作业,job# done表示已完成的作业。
前台作业
fg job#
后台作业
bg job#
挂起作业
stop job#
程序编译执行
cc [option] filename
编译或链接指定的C文件
-o 指定输出文件名,缺省时为a.out
-c 只编译,产生.o的目标文件
-g 产生用于符号测试的执行文件
-lm 进行连接cc数学库
-O 进行代码的一般优化
-O2 二级优化
GNU程序编译
gcc (GNU C)
g++/c++ (GNU C++)
选项:
-o 指定输出文件名,缺省时为a.out
-c 只编译,产生.o的目标文件
-O 进行代码的一般优化
-O2 二级优化
intel编译器
icc