IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> linux中21个中级命令 -> 正文阅读

[系统运维]linux中21个中级命令

对linux高级用户有用的20个命令

在这里插入图片描述

1.命令:ifconfig

ifconfig命令用于配置网络接口信息。如配置网络接口的ip地址,默认网关地址等,以便机器能够联通互联网。

显示当前网络接口信息

viidiot@ubuntu:~$ ifconfig

eth0 Link encap:Ethernet HWaddr 00:0c:29:b3🇩🇪1c

inet addr:192.168.1.141 Bcast:192.168.1.255 Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:feb3:de1c/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:8673 errors:0 dropped:0 overruns:0 frame:0

TX packets:6397 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:10167651 (10.1 MB) TX bytes:417860 (417.8 KB)

Interrupt:19 Base address:0×2024

lo Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:66 errors:0 dropped:0 overruns:0 frame:0

TX packets:66 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:10954 (10.9 KB) TX bytes:10954 (10.9 KB)

关闭名为eth0 网络接口

viidiot@ubuntu:~$ sudo ifconfig eth0 down

开启名为eth0 网络接口

viidiot@ubuntu:~$ sudo ifconfig eth0 up

设置网络接口的ip地址

viidiot@ubuntu:~$ sudo ifconfig eth0 192.169.1.113

设置网络接口的ip地址,掩码,广播地址

viidiot@ubuntu:~$ sudo ifconfig eth0 192.169.1.113 netmask 255.255.255.0 broadcast 192.168.1.255

设置好ip地址和掩码之后,我们可以通过平命令来检测一下网络的联通性

viidiot@ubuntu:~$ ping www.baidu.com

connect: Network is unreachable

可以发现还是无法联通网络,这是因为我们还没有为网络配置路由。

【附】使用route命令设置默认网关

在使用ifconfig设置了网络接口ip地址,掩码后,可以利用route命令设置默认网关地址,即为其我们的网络添加了一条默认路由规则。

viidiot@ubuntu:~$ sudo route add default gw 192.168.1.1

然后再用ping命令来测试网络的联通性

viidiot@ubuntu:~$ ping www.baidu.com

PING www.a.shifen.com (115.239.210.27) 56(84) bytes of data.

64 bytes from 115.239.210.27: icmp_req=1 ttl=128 time=44.1 ms

64 bytes from 115.239.210.27: icmp_req=2 ttl=128 time=52.8 ms

64 bytes from 115.239.210.27: icmp_req=3 ttl=128 time=42.8 ms

64 bytes from 115.239.210.27: icmp_req=4 ttl=128 time=49.0 ms

64 bytes from 115.239.210.27: icmp_req=5 ttl=128 time=42.5 ms

64 bytes from 115.239.210.27: icmp_req=6 ttl=128 time=47.1 ms

现在可以联通网络了,good,呵呵。

2.命令:netstat

Netstat命令可用于查看系统各种与网络相关的信息,如网络连接状态,系统路由表,网络接口统计信息等等。

列出所有网络端口信息

viidiot@ubuntu:~$netstat -a

列出所有tcp连接信息

viidiot@ubuntu:~$netstat -at

显示所有端口的数据包统计信息

viidiot@ubuntu:~$netstat -s

如需要查看端口网络动态信息,只需使用命令的-c参数即可

viidiot@ubuntu:~$netstat -c

3.命令:nslookup

Nslookup用于查看网络主机的相信信息,如ip地址,服务端口等信息。

viidiot@ubuntu:~$ nslookup www.baidu.com

Server: 192.168.1.1

Address: 192.168.1.1#53

Non-authoritative answer:

www.baidu.com canonical name = www.a.shifen.com.

Name: www.a.shifen.com

Address: 115.239.210.27

Name: www.a.shifen.com

Address: 115.239.210.26

4.命令:dig

Dig命令用于向dns域名解析服务器一些譬如主机地址相关信息。这个命令,我至今没用过,尴尬。命令使用方法如下,可以发现dig能够获得很详细的主机相关信息。

viidiot@ubuntu:~$ dig www.baidu.com

; <<>> DiG 9.7.1-P2 <<>> www.baidu.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10771

;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 4, ADDITIONAL: 4

;; QUESTION SECTION:

;www.baidu.com. IN A

;; ANSWER SECTION:

www.baidu.com. 5 IN CNAME www.a.shifen.com.

www.a.shifen.com. 5 IN A 115.239.210.27

www.a.shifen.com. 5 IN A 115.239.210.26

;; AUTHORITY SECTION:

a.shifen.com. 5 IN NS ns2.a.shifen.com.

a.shifen.com. 5 IN NS ns3.a.shifen.com.

a.shifen.com. 5 IN NS ns4.a.shifen.com.

a.shifen.com. 5 IN NS ns1.a.shifen.com.

;; ADDITIONAL SECTION:

ns1.a.shifen.com. 5 IN A 61.135.165.224

ns2.a.shifen.com. 5 IN A 180.149.133.241

ns3.a.shifen.com. 5 IN A 61.135.162.215

ns4.a.shifen.com. 5 IN A 115.239.210.176

;; Query time: 222 msec

;; SERVER: 192.168.1.1#53(192.168.1.1)

;; WHEN: Mon Sep 30 15:11:36 2013

;; MSG SIZE rcvd: 226

5.命令:uptime

Uptime命令能够提供系统的启动时间,当前负载情况,系统当前用户数。

viidiot@ubuntu:~$ uptime

15:15:07 up 8:46, 2 users, load average: 0.36, 0.44, 0.44

6.命令:wall

Wall命令对系统管理员来说很常用,它能够给登录到系统的用户发送信息(需要用户的mesg permission设置成yes,该用户才会收到信息)。比如系统需要重启,管理员得通知当前登录的用户,做好准备,我要重启系统了,你们该干嘛干嘛,总之得有心理准备,过会就重启了哦。。。

[avishek@tecmint ~]$ wall ”we will be going down for maintenance for one hour sharply at 03:30 pm”

Broadcast message from root@localhost.localdomain (pts/0) (Sat Jun 29 14:44:02 2013):

we will be going down for maintenance for one hour sharply at 03:30 pm

7.命令:msg

通过Msg命令你能决定是否允许其他用户通过write命令给你发送消息。

8.命令:write

通过write命令可以直接给另一太linux机器发送文本消息。

9.命令:talk

Write命令的加强版。

10.命令:w

W命令很酷吧,只有一个字符。它是uptime命令和who命令的混血儿。允许效果如下,看到没,相当于运行了一个uptime命令,接着再运行一个who命令。

viidiot@ubuntu:~$ w

15:32:34 up 9:03, 2 users, load average: 0.27, 0.36, 0.36

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

viidiot tty7 :0 23Sep13 7days 10:45 1.17s gnome-session

viidiot pts/0 :0.0 14:21 1.00s 1.93s 0.21s w

11.命令:rename

给文件快捷重命名。

12.命令:top

显示CPU进程信息。

viidiot@ubuntu:~$ top

top - 15:36:39 up 9:07, 2 users, load average: 1.04, 0.56, 0.42

Tasks: 137 total, 2 running, 135 sleeping, 0 stopped, 0 zombie

Cpu(s): 7.9%us, 9.6%sy, 0.0%ni, 82.5%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

Mem: 1025232k total, 772468k used, 252764k free, 150000k buffers

Swap: 916476k total, 0k used, 916476k free, 415288k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

1674 root 20 0 163m 21m 7956 R 13.6 2.2 10:53.65 Xorg

6900 viidiot 20 0 94076 13m 10m S 4.3 1.4 0:28.08 gnome-terminal

7593 viidiot 20 0 2624 1124 840 R 0.7 0.1 0:00.16 top

1551 root 20 0 26336 4124 3376 S 0.3 0.4 1:16.39 vmtoolsd

1967 viidiot 20 0 96212 22m 17m S 0.3 2.2 2:02.38 vmtoolsd

13. 命令: mkfs.ext4

这个命令在指定的设备上创建一个新的ext4文件系统,如果这个命令后面跟的是个错误的设备,那么整个设备就会被擦除和格式化,所以建议不要运行这个命令,除非你清楚自己正在干什么。

14. vi/emac/nano 命令

vi (visual), emac, nano 是 linux 中最常用的一些编辑器。它们经常用于编辑文本,不过我喜欢vim,是vi的加强版。

15. 命令: rsync

Rsync复制文件,参数-P开启进度条。从而可以看到文件的复制进度。很酷吧,不止windows可以,linux在命令行就能做到。

16. 命令: free

Free命令显示当前系统的资源使用情况,如内存,交换器等的使用情况。

viidiot@ubuntu:~$ free

total used free shared buffers cached

Mem: 1025232 772840 252392 0 150016 415292

-/+ buffers/cache: 207532 817700

Swap: 916476 0 916476

17. mysqldump 命令

数据库备份用。从名字上就能明白这个命令所代表的作用。mysqldump 命令会转储(备份)数据库的全部或特定一部分数据到一个给定的文件中。例如:

[avishek@tecmint ~]$ mysqldump -u root -p –all-databases > /home/server/Desktop/backupfile.sql

18. mkpasswd 命令

根据指定的长度,产生一个无比牛逼的随机密码,呵呵。

[avishek@tecmint ~]$ mkpasswd -l 20

w0Pr7aqKk&hmbmqdrlmk

19. Command: paste

合并两个或多个文本文件,按行来进行合并。示例。如果 file1 的内容是:

1

2

3

file2 的内容是:

a

b

c

d

则合并结果为:

1 a

2 b

3 c

d

20.命令: lsof

lsof 是”list open files(“列表中打开的文件”) 的缩写,显示系统当前已打开的所有文件。对于想找出哪些进程使用某一特定文件非常有用,或显示为单个进程打开所有文件。一些有用的 10 个lsof 命令示例,你可能会感兴趣。

21. find命令

在当前目录搜索文件

rumenz@local:~# find -name *.sh 

./Desktop/load.sh 
./Desktop/test.sh 
./Desktop/shutdown.sh 
./Binary/firefox/run-mozilla.sh 
./Downloads/kdewebdev-3.5.8/quanta/scripts/externalpreview.sh 
./Downloads/kdewebdev-3.5.8/admin/doxygen.sh 
./Downloads/kdewebdev-3.5.8/admin/cvs.sh 
./Downloads/kdewebdev-3.5.8/admin/ltmain.sh 
./Downloads/wheezy-nv-install.sh

Note:-name选项使搜索区分大小写。你可以使用 -iname无论大小写都可以找到一些东西的选项。(*是一个通配符并搜索所有扩展名为 ' 的文件.sh`你可以使用文件名或文件名的一部分来自定义输出)。

rumenz@local:~# find -iname *.SH ( find -iname *.Sh /  find -iname *.sH)

./Desktop/load.sh 
./Desktop/test.sh 
./Desktop/shutdown.sh 
./Binary/firefox/run-mozilla.sh 
./Downloads/kdewebdev-3.5.8/quanta/scripts/externalpreview.sh 
./Downloads/kdewebdev-3.5.8/admin/doxygen.sh 
./Downloads/kdewebdev-3.5.8/admin/cvs.sh 
./Downloads/kdewebdev-3.5.8/admin/ltmain.sh 
./Downloads/wheezy-nv-install.sh
rumenz@local:~# find -name *.tar.gz 

/var/www/modules/update/tests/aaa_update_test.tar.gz 
./var/cache/flashplugin-nonfree/install_flash_player_11_linux.i386.tar.gz 
./home/server/Downloads/drupal-7.22.tar.gz 
./home/server/Downloads/smtp-7.x-1.0.tar.gz 
./home/server/Downloads/noreqnewpass-7.x-1.2.tar.gz 
./usr/share/gettext/archive.git.tar.gz 
./usr/share/doc/apg/php.tar.gz 
./usr/share/doc/festival/examples/speech_pm_1.0.tar.gz 
./usr/share/doc/argyll/examples/spyder2.tar.gz 
./usr/share/usb_modeswitch/configPack.tar.gz

22. grep命令

grep命令在给定文件中搜索包含与给定字符串或单词匹配的行。搜索 /etc/passwdrumenz用户。

rumenz@local:~# grep rumenz /etc/passwd 

rumenz:x:1000:1000:rumenz,,,:/home/rumenz:/bin/bash

-i忽略单词大小写

rumenz@local:~# grep -i rumenz /etc/passwd 

rumenz:x:1000:1000:rumenz,,,:/home/rumenz:/bin/bash

递归搜索-r

rumenz@local:~# grep -r "127.0.0.1" /etc/ 

/etc/vlc/lua/http/.hosts:127.0.0.1
/etc/speech-dispatcher/modules/ivona.conf:#IvonaServerHost "127.0.0.1"
/etc/mysql/my.cnf:bind-address  = 127.0.0.1
/etc/apache2/mods-available/status.conf:    Allow from 127.0.0.1 ::1
/etc/apache2/mods-available/ldap.conf:    Allow from 127.0.0.1 ::1
/etc/apache2/mods-available/info.conf:    Allow from 127.0.0.1 ::1
/etc/apache2/mods-available/proxy_balancer.conf:#    Allow from 127.0.0.1 ::1
/etc/security/access.conf:#+ : root : 127.0.0.1
/etc/dhcp/dhclient.conf:#prepend domain-name-servers 127.0.0.1;
/etc/dhcp/dhclient.conf:#  option domain-name-servers 127.0.0.1;
/etc/init/network-interface.conf: ifconfig lo 127.0.0.1 up || true
/etc/java-6-openjdk/net.properties:# localhost & 127.0.0.1).
/etc/java-6-openjdk/net.properties:# http.nonProxyHosts=localhost|127.0.0.1
/etc/java-6-openjdk/net.properties:# localhost & 127.0.0.1).
/etc/java-6-openjdk/net.properties:# ftp.nonProxyHosts=localhost|127.0.0.1
/etc/hosts:127.0.0.1 localhost
  1. -w单词 (egrep -w word1|word2/path/to/file)。
  2. -cfor count(即模式匹配的总次数)(grep -c word/path/to/file)。
  3. –color对于彩色输出(grep–color服务器 /etc/passwd)。

23. man命令

man是系统的手册页。Man 提供了有关命令及其用法的所有可能选项的在线文档。几乎所有的命令都带有相应的手册页。例如,

rumenz@local:~# man man

MAN(1)                                                               Manual pager utils                                                              MAN(1)

NAME
       man - an interface to the on-line reference manuals

SYNOPSIS
       man  [-C  file]  [-d]  [-D]  [--warnings[=warnings]]  [-R  encoding]  [-L  locale]  [-m  system[,...]]  [-M  path]  [-S list] [-e extension] [-i|-I]
       [--regex|--wildcard] [--names-only] [-a] [-u] [--no-subpages] [-P pager] [-r prompt] [-7] [-E encoding] [--no-hyphenation] [--no-justification]  [-p
       string] [-t] [-T[device]] [-H[browser]] [-X[dpi]] [-Z] [[section] page ...] ...
       man -k [apropos options] regexp ...
       man -K [-w|-W] [-S list] [-i|-I] [--regex] [section] term ...
       man -f [whatis options] page ...
       man -l [-C file] [-d] [-D] [--warnings[=warnings]] [-R encoding] [-L locale] [-P pager] [-r prompt] [-7] [-E encoding] [-p string] [-t] [-T[device]]
       [-H[browser]] [-X[dpi]] [-Z] file ...
       man -w|-W [-C file] [-d] [-D] page ...
       man -c [-C file] [-d] [-D] page ...
       man [-hV]

手册页本身的手册页,类似地man cat([cat 命令的]手册页和man ls([命令 ls 的]手册页)。

24. ps命令

ps(Process) 以唯一的方式给出正在运行的进程的状态IdPID.

rumenz@local:~# ps

 PID TTY          TIME CMD
 4170 pts/1    00:00:00 bash
 9628 pts/1    00:00:00 ps

列出所有进程的状态以及进程idPID, 使用选项 -A

rumenz@local:~# ps -A

 PID TTY          TIME CMD
    1 ?        00:00:01 init
    2 ?        00:00:00 kthreadd
    3 ?        00:00:01 ksoftirqd/0
    5 ?        00:00:00 kworker/0:0H
    7 ?        00:00:00 kworker/u:0H
    8 ?        00:00:00 migration/0
    9 ?        00:00:00 rcu_bh
....

Note:可以先用grep找到进程的pid

rumenz@local:~# ps -A | grep -i ssh

 1500 ?        00:09:58 sshd
 4317 ?        00:00:00 sshd

这里psgrep命令来查找我们需要的自定义和相关输出。

25. kill命令

rumenz@local:~# ps -A | grep -i apache2

1285 ?        00:00:00 apache2

查找进程apache2,注意其pidkill它。例如,在我的情况下apache2pid 是1285

rumenz@local:~# kill 1285 (to kill the process apache2)

Note: 每次重新运行一个进程或启动一个系统时,都会有一个新的pid为每个进程生成,你可以了解当前正在运行的进程及其pid使用命令 ps

pkill通过进程名结束进程

rumenz@local:~# pkill apache2

26. whereis命令

whereis命令用于定位Binary,SourcesManual Pages命令的。例如,要定位Binary,SourcesManual Pages命令的lskill

rumenz@local:~# whereis ls 

ls: /bin/ls /usr/share/man/man1/ls.1.gz
rumenz@local:~# whereis kill

kill: /bin/kill /usr/share/man/man2/kill.2.gz /usr/share/man/man1/kill.1.gz

27. service命令

service命令控制Starting,StoppingRestarting一个service。这个命令可以start,restartstop无需重新启动系统即可使更改生效的服务。

在 Ubuntu 上启动 apache2 服务器

rumenz@local:~# service apache2 start

 * Starting web server apache2                                                                                                                                 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
httpd (pid 1285) already running      [ OK ]

在 Ubuntu 上停止 apache2 服务器

rumenz@local:~# service apache2 stop
                                                           [ OK ]

28. alias命令

alias是一个内置的 shell 命令,可让你为长命令或常用命令指定自定义名称。

我经常使用 ls -l命令。因此我为此创建了一个别名为 l

rumenz@local:~# alias l='ls -l'

检查它是否有效。

rumenz@local:~# l

total 36 
drwxr-xr-x 3 rumenz rumenz 4096 May 10 11:14 Binary 
drwxr-xr-x 3 rumenz rumenz 4096 May 21 11:21 Desktop 
drwxr-xr-x 2 rumenz rumenz 4096 May 21 15:23 Documents 
drwxr-xr-x 8 rumenz rumenz 4096 May 20 14:56 Downloads 
drwxr-xr-x 2 rumenz rumenz 4096 May  7 16:58 Music 
drwxr-xr-x 2 rumenz rumenz 4096 May 20 16:17 Pictures 
drwxr-xr-x 2 rumenz rumenz 4096 May  7 16:58 Public 
drwxr-xr-x 2 rumenz rumenz 4096 May  7 16:58 Templates 
drwxr-xr-x 2 rumenz rumenz 4096 May  7 16:58 Videos

删除别名 l, 使用下面的unalias命令。

rumenz@local:~# unalias l
rumenz@local:~# l

bash: l: command not found

29. df命令

报告文件系统的磁盘使用情况。对用户和系统管理员跟踪他们的磁盘使用情况很有用。df通过检查目录条目来工作,目录条目通常仅在文件关闭时更新。

rumenz@local:~# df

Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda1       47929224 7811908  37675948  18% /
none                   4       0         4   0% /sys/fs/cgroup
udev             1005916       4   1005912   1% /dev
tmpfs             202824     816    202008   1% /run
none                5120       0      5120   0% /run/lock
none             1014120     628   1013492   1% /run/shm
none              102400      44    102356   1% /run/user
/dev/sda5         184307   79852     94727  46% /boot
/dev/sda7       95989516   61104  91045676   1% /data
/dev/sda8       91953192   57032  87218528   1% /personal

30. du命令

统计文件空间使用量。以分层方式(即以递归方式)按文件输出磁盘使用情况摘要。

rumenz@local:~# du

8       ./Daily Pics/wp-polls/images/default_gradient
8       ./Daily Pics/wp-polls/images/default
32      ./Daily Pics/wp-polls/images
8       ./Daily Pics/wp-polls/tinymce/plugins/polls/langs
8       ./Daily Pics/wp-polls/tinymce/plugins/polls/img
28      ./Daily Pics/wp-polls/tinymce/plugins/polls
32      ./Daily Pics/wp-polls/tinymce/plugins
36      ./Daily Pics/wp-polls/tinymce
580     ./Daily Pics/wp-polls
1456    ./Daily Pics
36      ./Plugins/wordpress-author-box
16180   ./Plugins
12      ./May Articles 2013/Xtreme Download Manager
4632    ./May Articles 2013/XCache

31. rm命令

命令 rm代表移除。rm用于删除文件和目录。

删除目录

rumenz@local:~# rm PassportApplicationForm_Main_English_V1.0

rm: cannot remove `PassportApplicationForm_Main_English_V1.0': Is a directory

不能简单地通过rm删除目录,你必须使用rm -rf

rumenz@local:~# rm -rf PassportApplicationForm_Main_English_V1.0

Warning:rm -rf命令是一个危险的命令,如果你不小心把它放到了错误的目录中。一旦你rm -rf一个目录中的所有文件和目录本身突然就永远丢失了。请谨慎使用。

32. echo命令

echo顾名思义,在标准输出上回显文本。它与 shell 无关,shell 也不读取 echo 命令的输出。但是在交互式脚本中,echo 通过终端将消息传递给用户。它是脚本、交互式脚本中常用的命令之一。

rumenz@local:~# echo "rumenz.com is a very good website" 

rumenz.com is a very good website
创建一个小的交互式脚本
  1. 创建一个文件,命名为interactive_shell.sh在桌面上。(记住.sh扩展名是必须的)。
  2. 复制粘贴下面的脚本,完全一样,如下。
#!/bin/bash 
echo "Please enter your name:" 
read name 
echo "Welcome to Linux $name"

接下来,设置执行权限并运行脚本。

rumenz@local:~# chmod 777 interactive_shell.sh
rumenz@local:~# ./interactive_shell.sh

Please enter your name:
Ravi Saive
Welcome to Linux Ravi Saive

Note:#!/bin/bash告诉 shell 它是一个脚本。

33. passwd命令

这是一个重要的命令,可用于在终端中更改自己的密码。显然出于安全原因,你需要知道你当前的密码。

rumenz@local:~# passwd 

Changing password for rumenz. 
(current) UNIX password: 
Enter new UNIX password: 
Retype new UNIX password: 
Password unchanged   [Here was passowrd remians unchanged, i.e., new password=old password]
Enter new UNIX password: #####
Retype new UNIX password:#####

34. lpr命令

此命令将命令行上命名的文件打印到命名打印机。

rumenz@local:~# lpr -P deskjet-4620-series 1-final.pdf

Note: lpq命令可让你查看打印机的状态(是否已启动)以及等待打印的作业(文件)。

35. cmp命令

比较任何类型的两个文件并将结果写入标准输出。默认情况下,cmp如果文件相同,则返回 0;如果它们不同,则报告出现第一个不同的字节和行号。

文件 1.txt
rumenz@local:~# cat file1.txt

Hi My name is rumenz
文件 2.txt
rumenz@local:~# cat file2.txt

Hi My name is rumenz [dot] com

我们比较两个文件并查看命令的输出。

rumenz@local:~# cmp file1.txt file2.txt 

file1.txt file2.txt differ: byte 15, line 1

36. wget命令

wget是一种免费实用程序,用于从 Web 上以非交互方式(即可以在后台工作)下载文件。它支持HTTP,HTTPS,FTP协议和HTTP代理。

使用 wget 下载 ffmpeg

rumenz@local:~# wget http://downloads.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2

100%[===========================================================================>] 2,75,557    67.8KB/s   in 4.0s   

2021-08-22 18:55:00 (67.8 KB/s) - ‘ffmpeg-php-0.6.0.tbz2’ saved [275557/275557]

37. mount命令

Mount是一个重要的命令,用于挂载不挂载自身的文件系统。你需要root权限才能挂载设备。

第一次运行lsblk在插入你的文件系统并识别你的设备并记下你的设备分配名称后。

rumenz@local:~# lsblk 

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT 
sda      8:0    0 931.5G  0 disk 
├─sda1   8:1    0 923.6G  0 part / 
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0   7.9G  0 part [SWAP] 
sr0     11:0    1  1024M  0 rom  
sdb      8:16   1   3.7G  0 disk 
└─sdb1   8:17   1   3.7G  0 part
rumenz@local:~# su
Password:
rumenz@local:~# cd /dev
rumenz@local:~# mkdir usb

现在挂载文件系统sdb1到目录usb

rumenz@local:~# mount /dev/sdb1 /dev/usb

现在你可以导航到/dev/usb从终端或X-windows挂载目录中的 system 和 access 文件。

38. gcc命令

gcc是一个编译器

#include <stdio.h>
int main()
{
  printf("Hello world\n");
  return 0;
}
编译它
rumenz@local:~# gcc Hello.c
运行它
rumenz@local:~# ./a.out 

Hello world

Note: 在编译一个c程序输出自动生成到一个新文件 a.out并且每次编译c程序相同的文件 a.out被修改。因此,在编译期间定义输出文件是一个很好的建议,因此不存在覆盖输出文件的风险。

这样编译
rumenz@local:~# gcc -o Hello Hello.c

这里-o将输出发送到Hello文件而不是a.out。再次运行它。

rumenz@local:~# ./Hello 

Hello world

39. g++命令

g++是 ’ 的内置编译器C++,第一个面向对象的编程语言。一个简单的c++程序,将其保存在你的桌面上Add.cpp(记住.cpp扩展名是必须的)。

#include <iostream>

using namespace std;

int main() 
    {
          int a;
          int b;
          cout<<"Enter first number:\n";
          cin >> a;
          cout <<"Enter the second number:\n";
          cin>> b;
          cin.ignore();
          int result = a + b;
          cout<<"Result is"<<"  "<<result<<endl;
          cin.get();
          return 0;
     }
编译它
rumenz@local:~# g++ Add.cpp
运行它
rumenz@local:~# ./a.out

Enter first number: 
...
...

Note: 在编译一个c++程序输出自动生成到一个新文件 a.out并且每次编译c++程序相同的文件 a.out被修改。因此,在编译期间定义输出文件是一个很好的建议,因此不存在覆盖输出文件的风险。

这样编译
rumenz@local:~# g++ -o Add Add.cpp
运行它
rumenz@local:~# ./Add 

Enter first number: 
...
...

40. java命令

Java是世界上使用率最高的编程语言之一,被认为是快速、安全和可靠的。当今大多数基于 Web 的服务都运行在 Java 上。

通过将以下测试粘贴到名为的文件中来创建一个简单的 java 程序rumenz.java(记住.java扩展名是必须的)。

class rumenz {
  public static void main(String[] arguments) {
    System.out.println("rumenz ");
  }
}
使用 javac 编译
rumenz@local:~# javac rumenz.java
运行它
rumenz@local:~# java rumenz
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-08-28 09:45:32  更:2021-08-28 09:45:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 12:14:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码