## 文件查看命令
file、stat、cat、more、less、head、tail、cut、sort、uniq、wc、tr
>[info] 以上命令不修改源文件,只是在打印輸出時按指定的方式顯示而已
## 文件屬性的查看 file stat
### 命令 file
用來查看文件##內容##或目錄的屬性信息
### 命令 stat
用來查看目錄或者文件的元數據,包括三個時間
>[danger] atime,ctime,mtime
atime 文件查看時間
ctime 文件屬性改變時間,名稱和權限
mtime 文件內容改變時間
## 文件內容的查看:cat、tac、more、less、head、tail
### 命令 cat 用來查看文件的內容
~~~
cat [-A] [-E] [-n] file
-A --show-all
打印所有字符和符號
-E --show-ends
打印行結束符
-n --number
打印行號
~~~
### 命令 tac 用來倒敘查看文件的內容
### 命令 less more 用來詳細查看文件內容
+/pattern 在每個檔案顯示前搜尋該字串(pattern),然后從該字串前兩行之后開始顯示
more查看到文件最后一行會直接退出
控制命令
space 翻頁
b 向上翻頁
j 向下一行
k 向上一行
### 命令 head 用來查看文件頭部的內容,默認是前10行
~~~
head [-n] file
-n --line
指定打印前幾行
~~~
### 命令 tail
用來查看文件尾部的內容
~~~
tail [-n] [-f] file
-n --line
指定查看后幾行
-f --follow
查看文件尾部的更新,并不退出
~~~
## 文件內容的切割:cut,sort
### 命令 cut 從每一行移除一部分并顯示剩下的部分
remove sections from each line of files
~~~
cut [-d] [-f] file
-d --delimiter
用來指定分隔符,默認的分隔符是空格
-f --fields
用來指定要查看的字段,多個字段用逗號隔開,連續的字段用-連接
~~~
### 命令 sort 用來對文件的內容進行排序
sort lines of text files
~~~
sort [-t] [-k] [-n] [-r] [-u] file
若有數值,默認按照每一個字符的數值大小進行比較
-t --field-separator=SEP
指定字段的分隔符
-k --key=POS1[,POS2]
指定要查看的字段,多個字段用逗號隔開,連續字段用-連接
-n --numeric-sort
根據數字的數值大小進行排序
-r --reverse
反向
-u --unique
排序后相同的行只顯示一次
~~~
>[info] 利用現存兩個文件,生成一個新的文件
~~~
1. 取出兩個文件的并集(重復的行只保留一份)
cat file1 file2 | sort | uniq
2. 取出兩個文件的交集(只留下同時存在于兩個文件中的文件)
cat file1 file2 | sort | uniq -d
3. 刪除交集,留下其他的行
cat file1 file2 | sort | uniq -u
~~~
## 文件內容的排序:uniq
命令 uniq report or omit repeated lines
此處的重復行是指相鄰的行重復,不相鄰不算,與sort不同
~~~
uniq [d] [-D] [-c] file
-d --repeated
只顯示重復的行,顯示一次
-D --all-repeated
顯示重復的行有幾次顯示幾次
-c --count
對重復的行進行計數,相鄰的重復行
~~~
## 文件內容統計信息
### 命令 wc word account
wc直接跟上文件時,結果會跟上文件名;使用管道時,結果后無文件名。
~~~
wc [-l] [-w] [-c] [-L] file
-l --lines
行數
-w --words
單詞數
-c --bytes
字節數
-m --chars
字符數
-L --max-line-length
最長一行包含的字節數
~~~
## 文件的字處理
### 命令 tr translate or delete characters
轉化與刪除字符
~~~
-c或——complerment:取代所有不屬于第一字符集的字符;
-d或——delete:刪除所有屬于第一字符集的字符;
dc常一起使用
-s或--squeeze-repeats:把連續重復的字符以單獨一個字符表示;
-t或--truncate-set1:先刪除第一字符集較第二字符集多出的字符。
~~~
~~~
大小寫轉換
tr 'ab' 'AB' < file
# cat a.txt | tr '[a-z]' '[A-Z]'
刪除指定字符
# echo "hello 123 world 456" | tr -d '0-9'
hello world
用tr壓縮字符,可以壓縮輸入中重復的字符:
# echo "thissss is a text linnnnnnne." | tr -s ' sn'
this is a text line.
~~~
- 目錄
- 離散的內容
- IO模型
- 網卡綁定
- ssh
- 硬件測試
- 硬件
- limits
- 網絡流量
- 硬盤IO
- 硬盤
- tmux
- 主機名和域名
- http_proxy
- iptables
- 內核參數
- 塊設備和字符設備
- 內存
- 虛擬內存并非交換分區
- 網絡延時
- 概念
- 多核壓縮
- linux基礎
- SSH協議
- 軟件管理
- yum
- 制作本地源 yum系列
- 制作本地源 apt系列
- apt
- 在 Linux 中移除從源代碼安裝的程序的一種簡單的方法
- 其他
- 源碼編譯和二進制安裝后更改配置
- DNS
- bind
- 守護進程
- 特殊權限
- limit.conf配置
- 網絡
- shell-ok
- 變量ok
- 數組ok
- 系統變量和環境變量
- 運算符和計算-ok
- 條件測試-ok
- 選擇-ok
- shell循環-ok
- 輸出echo和printf-ok
- 技巧-ok
- pre-web
- http協議
- web服務器
- Apache
- apache安裝
- yum安裝
- 二進制安裝
- 編譯安裝
- httpd命令
- 運行 監控apache
- apache配置文件
- 常用配置
- MPM多處理模塊
- 編譯模塊
- apache模塊
- apache核心模塊
- apache標準模塊
- apache第三方模塊
- 虛擬主機
- 1
- CGI-FastCGI-SSI
- 別名和重定向
- apache應用
- 301重定向
- apache防盜鏈
- http轉化為https
- 訪問時間段控制
- 控制訪問目錄
- 限制指定USER_AGENT
- 不同客戶端訪問不同網頁
- apache黑名單
- httpd之禁止解析php
- 不記錄css/js/img的訪問日志
- 瀏覽器端靜態緩存
- apache訪問日志自動切割
- order-require
- 壓縮傳輸
- httpd-ssl
- apache代理
- 正向代理
- 反向代理
- apache調優
- httpd壓力測試工具ab
- CGI測試
- php
- php原理
- httpd和php的結合方式
- php yum安裝之DSO模式
- php 編譯安裝之DSO模式
- php-fpm詳解
- php yum安裝之php-fpm模式
- php 編譯安裝之FastCGI模式
- php擴展之mysql
- php擴展之gd
- php擴展之pcntl
- php擴展之xcache
- php擴展之ZendGuardLoader
- phpMyAdmin
- wordpress
- 數據庫-mysql
- 數據庫原理
- mysql數據庫原理
- mysql源碼編譯安裝
- mysql二進制包安裝
- mysql命令行工具
- 更改密碼
- 數據庫授權grant
- mysql日志
- 命令
- 常用
- 小命令大作為
- awk 報告生成器
- 網絡命令
- 命令查找
- 壓縮歸檔命令
- 文件管理
- 文件管理命令
- 文件查看命令
- 目錄管理命令
- 用戶管理命令
- 用戶權限管理
- curl
- cheat
- chrony
- command
- crontab任務計劃
- cut
- date
- dd
- df
- echo
- find
- grep
- hash
- iftop
- kill pkill killall
- ls
- lsmod和modprobe
- lsof
- man
- mkpasswd
- mount
- mtr
- netstat
- nmap
- nc
- NTP
- passwd
- rm
- rdate
- pv
- sar系統活動情況報告
- sed文本處理命令
- setup
- screen
- shutdown
- sort 命令
- sudo
- tcpdump
- top
- uniq
- wget
- who
- xargs
- 監控
- zabbix郵件報警
- Redis
- redis安裝
- redis數據類型和操作方法
- redis持久化和配置
- redis主從配置
- php連接redis
- redis實現session共享
- 安裝測試
- redis設置密碼
- ELK日志分析系統
- elasticsearch
- logstash
- logstash插件
- filebeat日志收集
- kibana
- jenkins
- jenkins安裝與配置
- 案例1
- 案例2
- 案例3
- 代碼倉庫之svn
- svn服務端配置
- 常用操作
- svn備份
- LB集群
- LVS負載均衡集群
- ipvsadm使用方法
- LVS調度方法
- NAT原理
- NAT實踐
- DR原理
- DR實踐
- TUN原理
- LVS持久連接
- HA集群
- HPC集群
- 共享存儲
- ftp協議
- vsftpd
- NFS
- 網站架構發展
- 文件同步
- rsync基本用法
- rsync安裝和使用_拉取模式
- lsyncd安裝和用法
- zabbix
- zabbix服務端安裝
- zabbix客戶端安裝
- zabbix編譯安裝
- zabbix監控tomcat
- zabbix監控mysql
- gitlab
- supervisor
- nsq
- ruby
- nodejs
- consul
- mesos
- zookeeper
- rwho
- 對象存儲
- 工具
- rclone
- minio
- linux 性能調優
- CPU
- 第一部分 CPU
- 安全