linux文本编辑器
文章目錄
- linux常見服務
- 一. 文本編輯器
- 二. 網絡管理
- 三. 進程管理
- 四. 登錄狀態
- 五. linux的啟動
- 七. 軟件安裝
- 7.1 壓縮與解壓
- 7.2 軟件的安裝
linux常見服務
一. 文本編輯器
vi vim是vi增強版
vim需要安裝
sudo apt-get -y install vim # macOS使用brew安裝vim的三種工作模式
1 編輯模式
命令模式=>編輯模式iaos
| i | 在光標當前位置插入文本 |
| a | 光標的下一個位置插入文本 |
| A | 當前行的行尾插入文本 |
| S | 刪除當前行內容,重新輸入 |
| s | 刪除光標當前位置的字符,開始輸入 |
| o | 在當前的下一行開始一個新行開始輸入 |
2 命令模式
編輯模式=>命令模式 請按esc
| H | 向左移動一個字符 |
| j | 向下移動一行 |
| k | 向上移動一行 |
| l | 向右移動一個字符 |
| ( | 移動到塊首 |
| ) | 移動到塊尾 |
| gg | 移動第一行 |
| G | 移動尾行 |
| ngg | 移動到第n行 n是一個數字 |
| yy | 復制光標當前行 |
| nyy | 復制n行 |
| p | 黏貼 |
| np 100p | 黏貼n次 |
| dd | 刪除一行 |
| ndd | 刪除n行 |
| u | 撤銷上一次的操作 |
| shift + 6 | 移動到本行行首 |
| shift+ 4 | 移動到本行行尾 |
| ctrl + r | 恢復前一個被撤銷的操作 |
| . | 重復前一個操作 |
3 底行模式
命令模式=》底行模式 按 : 或者 /
| :w | 保存,不退出 |
| :q | 不保存,退出 |
| :q! | 強制退出,不保存 |
| :wq | 保存并退出 |
| :x | 保存并退出 |
| :set nu | 顯示行號 |
| :set nonu | 不顯示行號 |
| :n | 移動到指定的行 |
| /字符串 (回車) | 搜索指定字符串 n找下一個,N找上一個 |
| ?字符串 | 從下往上找,n往上找,N往下找 |
| :s/要找的字符串/要替換的字符串 | 替換光標當前行的找到的第一個字符串 |
| :s/要找的字符串/要替換的字符串/g | 替換光標當前行的找到的所有字符串 |
| :%s/要找的字符串/要替換的字符串 | 替換每一行第一個找到字符串 |
| :%s/要找的字符串/要替換的字符串/g | 全文替換 |
二. 網絡管理
ifconfig
配置和顯示Linux內核中網絡接口的網絡參數。
#1 顯示網絡信息 [root@localhost ~]# ifconfig ens33 Link encap:Ethernet HWaddr 00:1C:42:14:7A:DD inet addr:192.168.3.46 Bcast:192.168.3.255 Mask:255.255.255.0inet6 addr: fe80::21c:42ff:fe14:7add/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:351142 errors:0 dropped:0 overruns:0 frame:0TX packets:748 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:81649700 (77.8 MiB) TX bytes:94340 (92.1 KiB)lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING MTU:65536 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:0 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) 重要數據說明:inet addr: ipv4地址 inet6: ipv6地址HWaddr: mac地址 Mask: 子網掩碼UP:代表網卡開啟 RUNNING:代表網卡的網線被接上 MULTICAST:支持組播 MTU:最大傳輸單元 (1500字節)。#2. ifconfig ens33 查看指定網卡信息 #3.啟動關閉網卡 ifconfig ens33 up #啟動網卡 ifconfig ens33 down #關閉網卡# 重啟網絡 /etc/init.d/network restartifup和ifdown 啟動和關閉網卡
需要配置/etc/network/interfaces,不建議使用這兩個命令ip
ip命令用來顯示或操縱Linux主機的路由、網絡設備、策略路由和隧道,是Linux下較新的功能強大的網絡配置工具。
ip [選項] [參數] 選項: -s 顯示詳細信息#1.用ip命令顯示網絡設備的運行狀態 ip link list#2 查看網絡地址 ip a ip address show ip address show ens33 #查看具體網卡的ip地址#3 修改接口狀態 ip link set enss33 up #開啟網卡 ip link set ens33 down #關閉網卡#4顯示路由信息 ip route showping
ping命令用來測試主機之間網絡的連通性
用法: ping [參數] [主機名或IP地址] 參數:-c n 執行指定次數 n的ping命令-b 測試與網關IP的連通性 #1.查看于百度的聯通型 [root@localhost ~]# ping -c 3 www.baidu.com PING www.a.shifen.com (119.75.213.61) 56(84) bytes of data. 64 bytes from 119.75.213.61: icmp_seq=1 ttl=56 time=6.96 ms 64 bytes from 119.75.213.61: icmp_seq=2 ttl=56 time=6.62 ms 64 bytes from 119.75.213.61: icmp_seq=3 ttl=56 time=6.14 ms--- www.a.shifen.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 3126ms rtt min/avg/max/mdev = 6.141/6.577/6.963/0.337 ms#2.查看于網關的連通性 [root@localhost ~]# ping -b www.baidu.com PING www.a.shifen.com (119.75.216.20) 56(84) bytes of data. 64 bytes from 119.75.216.20: icmp_seq=1 ttl=56 time=5.29 ms 64 bytes from 119.75.216.20: icmp_seq=2 ttl=56 time=8.47 ms 64 bytes from 119.75.216.20: icmp_seq=3 ttl=56 time=14.2 ms--- www.a.shifen.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 3499ms rtt min/avg/max/mdev = 5.294/9.342/14.257/3.711 msnetstat 查看網絡連接狀況
netstat -an-n 顯示端口-p 顯示進程-t tcp-u udp-a 顯示所有 #1.sudo netstat -nt 顯示所有已建立的TCP連接 Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 10.0.112.235:22 10.0.112.252:57530 ESTABLISHED tcp 0 64 192.168.3.46:22 192.168.3.50:58677 ESTABLISHED #2. sudo netstat -nu 顯示已建立的UDP連接 #3. sudo netstat -ntpa 顯示TCP端口號的使用情況三. 進程管理
ps
Linux中的ps命令是Process Status的縮寫。ps命令用于報告當前系統的進程狀態??梢源钆鋕ill指令隨時中斷、刪除不必要的程序。
用法: ps [選項參數] [用戶名](可選)參數:-a -e 顯示所有進程-u 顯示指定用戶的進程x :通常與 a 這個參數一起使用,可列出較完整信息。#1.ps -e|more -20 顯示所有進程,每屏20個#2.ps -u root|more -10 顯示指定用戶的進程信息#3. ps -ef|grep kworker 過濾指定信息#4. ps -aux 列出目前所有的正在內存當中的程序USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.1 19232 1496 ? Ss 00:23 0:00 /sbin/initroot 2 0.0 0.0 0 0 ? S 00:23 0:00 [kthreadd]root 3 0.0 0.0 0 0 ? S 00:23 0:00 [migration/0]PID 進程號 %CPU cpu的占用率 %MEM 內存的占用率 VSZ 占用虛擬內存的量 RSS 駐留內存的量TTY 進程的控制終端,?表示不是從終端進入的。 STAT 進程狀態(R就緒 S可中斷的休眠態 T暫停執行)START 進程開始時間 TIME已經執行的時間#殺死進程kill [參數] 進程號#1. kill 2 殺死指定進程號的進程#2. kill -9 2 強制殺死指定進程號的進程#殺死指定進程名的進程killall -TERM 進程名稱top
top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源占用狀況,類似于Windows的任務管理器。
用法: top 使用q退出 top - 03:32:26 up 3:08, 2 users, load average: 0.03, 0.04, 0.05 Tasks: 100 total, 1 running, 99 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 1016160k total, 163660k used, 852500k free, 9412k buffers Swap: 2064380k total, 0k used, 2064380k free, 51072k cachedPID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 19232 1496 1224 S 0.0 0.1 0:00.95 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.03 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:00.05 migration/0 數據說明: 03:32:26 當前時間 up 3:08 系統運行時間,格式為時:分 2 user 當前登錄用戶數 load average: 0.03, 0.04 0.05 系統負載,即任務隊列的平均長度。三個數值分別為 1分鐘、5分鐘、15分鐘前到現在的平均值。第二、三行為進程和CPU的信息。當有多個CPU時,這些內容可能會超過兩行。內容如下: total 進程總數 running 正在運行的進程數 sleeping 睡眠的進程數 stopped 停止的進程數 zombie 僵尸進程數 Cpu(s): 最后兩行為內存信息。內容如下: Mem: 191272k total 物理內存總量 173656k used 使用的物理內存總量 17616k free 空閑內存總量 22052k buffers 用作內核緩存的內存量 Swap: 192772k total 交換區總量 0k used 使用的交換區總量 192772k free 空閑交換區總量進程信息區統計信息區域的下方顯示了各個進程的詳細信息。首先來認識一下各列的含義。 序號 列名 含義 a PID 進程id b PPID 父進程id c RUSER Real user name d UID 進程所有者的用戶id e USER 進程所有者的用戶名 f GROUP 進程所有者的組名 g TTY 啟動進程的終端名。不是從終端啟動的進程則顯示為 ? h PR 優先級 i NI nice值。負值表示高優先級,正值表示低優先級 j P 最后使用的CPU,僅在多CPU環境下有意義 k %CPU 上次更新到現在的CPU時間占用百分比 l TIME 進程使用的CPU時間總計,單位秒 m TIME+ 進程使用的CPU時間總計,單位1/100秒 n %MEM 進程使用的物理內存百分比 o VIRT 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES p SWAP 進程使用的虛擬內存中,被換出的大小,單位kb。 q RES 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA r CODE 可執行代碼占用的物理內存大小,單位kb s DATA 可執行代碼以外的部分(數據段+棧)占用的物理內存大小,單位kb t SHR 共享內存大小,單位kb u nFLT 頁面錯誤次數 v nDRT 最后一次寫入到現在,被修改過的頁面數。 w S 進程狀態(D=不可中斷的睡眠狀態,R=運行,S=睡眠,T=跟蹤/停止,Z=僵尸進程) x COMMAND 命令名/命令行 y WCHAN 若該進程在睡眠,則顯示睡眠中的系統函數名 z Flags 任務標志,參考 sched.hlsof
lsof命令是一個列出當前系統打開文件的工具。
需要安裝命令 yum -y install lsof#1、直接輸入命令 lsof 終端下輸入lsof就會顯示系統打開的所有文件。由于lsof會訪問核心內存和各種文件,必須以root用戶來執行該命令。?
四. 登錄狀態
uname
uname命令用于顯示系統信息
#顯示linux核心版本號 uname -r #顯示系統所有信息 uname -a#顯示操作系統版本 uname -vhostname
顯示或設置主機名稱
#顯示主機名 $ hostname#臨時設置主機名 $ sudo hostname hello#永久設置主機名 $ vim /etc/hostname #ubuntu的主機名在/etc/hostname文件中,其他liux可能會在/etc/sysconfig/network中whoami
whoami命令用于顯示自身用戶名稱。
who
顯示當前登錄用戶
who [-aHbl]-H 顯示標題-a 顯示所有信息-b 顯示最近登錄時間-l 顯示系統登錄時間 $ who -Hl 名稱 線路 時間 空閑 進程號 備注 登錄 tty1 2018-03-30 14:17 952 id=tty1$ who -b系統引導 2018-03-30 14:17$ who -a系統引導 2018-03-30 14:17 登錄 tty1 2018-03-30 14:17 952 id=tty1運行級別 5 2018-03-30 14:17 python + tty7 2018-03-30 14:17 02:34 1431 (:0)w
用來查看登錄者的信息及他們的行為
w 命令:執行這項指令可得知目前登入系統的用戶有那些人,以及他們正在執行的程序。單獨執行w 命令會顯示所有的用戶,您也可指定用戶名稱,僅顯示某位用戶的相關信息。語法:w [-fhlsuV][用戶名稱] linux w 命令參數:-f 開啟或關閉顯示用戶從何處登入系統。-h 不顯示各欄位的標題信息列。-l 使用詳細格式列表,此為預設值。-s 使用簡潔格式列表,不顯示用戶登入時間,終端機階段作業和程序所耗費的CPU時間。-u 忽略執行程序的名稱,以及該程序耗費CPU時間的信息。#1. 常見用法,直接使用 [root@localhost csl]# w03:44:07 up 3:20, 2 users, load average: 0.07, 0.08, 0.06 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1 - 01:41 1:00m 0.13s 0.13s -bash root pts/1 192.168.3.50 02:34 0.00s 0.18s 0.00s wlast
顯示用戶最近登錄信息
#顯示用戶最近登錄信息,只顯示10行 $ last -10 python tty7 :0 Fri Mar 30 14:17 gone - no logout reboot system boot 4.13.0-37-generi Fri Mar 30 14:17 still running python tty7 :0 Thu Mar 29 20:59 - down (17:17) reboot system boot 4.13.0-37-generi Thu Mar 29 20:49 - 14:17 (17:28) python pts/18 10.0.103.229 Thu Mar 29 14:53 - 18:00 (03:07) python pts/17 10.0.136.238 Thu Mar 29 09:48 - 17:05 (07:17) python pts/17 10.0.136.238 Thu Mar 29 09:36 - 09:48 (00:11) python tty7 :0 Thu Mar 29 09:36 - down (08:24) reboot system boot 4.13.0-37-generi Thu Mar 29 09:36 - 18:00 (08:24) python pts/18 10.0.136.238 Thu Mar 29 09:17 - 09:35 (00:17)?
五. linux的啟動
1 開機BIOS加載
2 讀取MBR引導記錄
3 加載linux內核
4 加載init進程,實現系統初始化,init進程是其他所有進程的父進程
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-N5BsitFI-1573453126617)(runlevel.png)]
5 執行/etc/init/rc-sysinit.conf,設置啟動級別
6 啟動內核
7 執行不同運行級別腳本程序,視級別的不同執行rc0~rc6下的腳本來完成相應的初始化和啟動工作
8 執行/etc/init.d/rc.local ,可以把要自動加載的程序寫到這個腳本里
9 用戶登錄
顯示當前運行模式的命令: runlevel who -r##六. 計劃任務
在指定的時間做指定的事情,周期性的事情。需要用戶有相應的權限,否則無法操作
vim /etc/crontab 打開定時任務
crontab -l 查看定時任務 /etc/crontab 里邊的除外
crontab -e 編輯定時任務
分 小時 日 月 周 操作 解釋
0-59 0-23 1-31 1-12 0-6
0 0 * * * mysqldum 每天0時備份數據庫
0 2 * * 0 sync 每個星期天2點中做文件同步
0 0 15 * * /usr/local/jsgz.py 每個月的15號0時計算工資
0 */1 * * * sh 每個1個小時執行腳本
0 8,12,18 * * * daka.py 每天的8點、12點、18點打卡
crontab -r 清空所有定時任務 只能清除crontab -e產生的定時任務
清除指定定時任務 crontab -e 刪除指定行
service cron start/restart/stop #啟動、重啟、停止定時任務
- 實時查看日志
七. 軟件安裝
7.1 壓縮與解壓
windows常見的壓縮包:rar zip 7zip iso
linux常見的壓縮包: zip gz bz2 tar
gz壓縮和解壓
如果沒有gzip,用apt安裝# apt-get install gzipgzip 文件名1 文件名2 #多文件壓縮,自動生成對應壓縮包 文件名.gz 不能壓縮目錄 刪除原件 gzip -d 壓縮包1 壓縮包2 #支持批量解壓,刪除原件bz2壓縮和解壓
壓縮 bzip2 文件名1 文件名2 #支持批量壓縮 不支持壓縮目錄 自動升成 文件名.bz2解壓 bzip2 -d 包名1 包名2 #自動刪掉原件tar壓縮和解壓
tar [option]-c 打包-x 解包-v 可視化-f指定文件名-t 查看包里的東西-z 用gzip對包進行壓縮-j 用把bzip2對包進行壓縮tar -cvf 包名 文件名1 文件名2 目錄1 #不刪除原件,可以打包目錄tar -xvf 包名 #不刪除原件打包并壓縮tar -zcvf 包名 文件名1 文件名2 目錄1 tar -jcvf 包名 文件名1 文件名2 目錄1解壓tar -zxvf 包名tar -jxvf 包名zip壓縮和解壓
apt-get -y install zip unzipzip 包名 文件名或目錄 unzip 包名?
7.2 軟件的安裝
解決deb復雜的依賴關系
查看軟件包信息 sudo apt-cache showsrc 包名 獲得源碼 sudo apt-get source 包名 安裝軟件 sudo apt-get install 包名 刪除軟件 sudo apt-get remove 包名 獲取新的軟件包列表 sudo apt-get update 升級有可用更新的軟件包 sudo apt-get upgrage 安裝apache #1 更新軟件列表 sudo apt-get update#2 安裝 sudo apt-get install apache2#3 啟動服務 sudo /etc/init.d/apache2 start # start | restart | stop 或 service apache2 start# 配置虛擬站點 cd /etc/apache2 #在sites-available目錄下配置自己的虛擬站點 cp 000-default.conf www.jxc.com.confcd ../sites-enabled ln -s ../sites-available/www.jxc.com.conf www.jxc.com.conf#配置網站 cd /var/www/html/jxc vim index.html#重啟apache服務 sudo /etc/init.d/apache2 restart總結
以上是生活随笔為你收集整理的linux文本编辑器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第二次实验报告(漏)
- 下一篇: 启动项目出现com.mysql.jdbc