在linux中使用ls命令 ls -lh 可以顯示文件或者目錄大小,下面是顯示列內容說明
第一列:文件類型和權限
第二列:鏈接數量
第三列:所有者 - 顯示文件或目錄的所有者用戶名稱
第四列:顯示文件或者目錄用戶組
第五列:顯示文件的大小。單位為字節
第六列:顯示文件最后的修改時間和日期
第七列:顯示文件或者目錄名稱====================ls -l:以長格式列出文件和目錄,包括權限、所有者、大小和最后修改時間
ls -a:顯示所有文件,包括以點(.)開頭的隱藏文件
ls -lt:按時間排序,最新修改的文件或目錄會顯示在最前面
ls -lh:結合 -l 和 -h 選項,以易讀的格式顯示文件大小(例如,使用KB、MB)
cd /home/user/Documents 切換到指定目錄下
cd ..:切換到當前目錄的父目錄(返回到上一級目錄)
cat cbus_onl_busi.log 顯示文件filename的內容
cat -n cbus_onl_busi.log 顯示文件filename的內容,并在每行前面顯示行號
cat cbus_onl_busi.log | tail -n 10 顯示文件filename的最后幾行
grep "pattern" cbus_onl_busi.log | cat -n:使用grep搜索包含特定模式的行,然后通過管道將其傳遞給cat,并使用cat的-n選項顯示行號
cat al-gateway-oapi.log | grep 'error' | tail -n 10
打開文件后,more默認顯示第一屏的內容
按Space鍵可以翻到下一頁 按Enter鍵可以翻到下一行
按b鍵可以回退到上一頁
按q鍵退出more
按Space鍵(空格鍵)可以向前翻一頁 按b鍵可以向后翻一頁
按q鍵退出less
按:n可以顯示當前行號
touch newfile.txt 使用touch命令創建空文件
ls -l:在使用touch命令后,通常使用ls -l命令查看文件的時間戳和其他狀態信息
cp source destination:將名為source的文件復制到destination。如果destination是目錄,則文件將被復制到該目錄中
cp file1 file2 file3 destination:將多個文件復制到指定的destination目錄
cp -r source destination:遞歸地復制整個目錄source及其內容到destination。-r選項表示遞歸。
移動文件:
mv source destination:將名為source的文件移動到destination。如果destination是目錄,則文件將被移動到該目錄中
移動目錄:
mv -r source destination:遞歸地移動整個目錄source及其內容到destination。-r選項表示遞歸
重命名文件:
mv oldname newname:將文件從oldname重命名為newname
rm命令是非常危險的,特別是當使用-r選項時,因為它可以遞歸地刪除大量文件;如果不確定,可以使用-i選項,它會在刪除每個文件之前提示確認。
刪除文件:
rm filename 這將刪除名為filename的文件。
刪除目錄:
rm -r directory -r(或--recursive)選項用于遞歸地刪除目錄及其內容
強制刪除:
rm -f file -f(或--force)選項用于強制刪除文件,不提示確認
強制刪除只讀文件:
rm -i file -i選項在刪除每個文件之前提示確認,對于只讀文件特別有用
刪除舊文件:
rm -t 7 file -t選項刪除訪問時間超過7天的文件。
按名稱搜索:
find /path/to/search -name "filename" -name選項用于按文件名搜索
使用通配符:
find /path/to/search -name "*.txt" 使用通配符*可以搜索所有擴展名為.txt的文件
按大小搜索:
find /path/to/search -size +100M -size選項用于按文件大小搜索,+100M表示大于100MB的文件
根目錄開始查找所有擴展名為 .log 的文本文件,并找出包含 “ERROR” 的行
find / -type f -name "*.log" | xargs grep "ERROR"
根目錄開始查找所有擴展名為 .log 的文本文件,并找出包含 “20240607310111936703” 的文件路徑
find /data/logs/pm-service-onl/busi/20240607 -name "*.log" -exec zgrep "20240607310111936703" {} \; -print
搜索文本:
grep "pattern" 310H001.log
遞歸搜索:選項遞歸地在指定目錄及其子目錄中搜索
grep -r "pattern" /path/to/search
使用前綴和后綴:-B選項打印每個匹配行之前的行,-A選項打印之后。數字指定要打印的行數
grep "pattern" 310H001.log -B 20 -A 10
搜索多個模式:使用\|操作符在單個命令中搜索多個模式
grep "pattern1\|pattern2" 310H001.log
查看文件的前10行
head -n 10 /var/log/syslog/test.log
顯示文件的第N行到第M行
head -n M test.log | tail -n +N
指定顯示的行數: -n選項允許你指定顯示的行數,lines是你想要顯示的行數
tail -n 20 /var/log/syslog/test.log
實時顯示文件新增內容: -f選項用于實時查看文件的新增內容,通常用于查看日志文件。
tail -f /var/log/syslog/test.log
sort /etc/passwd/test.log
計算行數:
wc -l /var/log/syslog/test.log
只顯示總計: 使用管道和awk命令只顯示總計
wc -l file1 file2 file3 | awk '{total +=$1} END {print total}'
cut -d: -f1 /etc/passwd
nano /home/user/file.txt
vi /home/user/file.txt
emacs /home/user/file.txt
paste file1.txt file2.txt
find / -name '*.log'
參考1文件命令
grep 'error' /var/log/syslog
locate myFile.txt
which java
參考16其他命令說明
whereis ls
參考16其他命令說明
mkdir /home/user/new_directory
rmdir /home/user/empty_directory
tree /home/user/
du -sh /home/user/Documents
可以參考 9磁盤命令管理
df -h
可以參考 9磁盤命令管理
chmod 755 /home/user/file.txt
表示設置文件的主用戶有讀,寫和執行權限(rwx=7),同組的用戶和其他用戶有讀和執行權限(rx=5)。
chown newuser:newgroup /home/user/file.txt
表示將/home/user/file.txt的所有者更改為newuser,所屬的組更改為newgroup。
chgrp newgroup /home/user/file.txt
表示將/home/user/file.txt的所屬的組更改為newgroup。
測試與 www.example.com 的網絡連通性
ping www.baidu.com
顯示 eth0 網絡接口的信息
ifconfig eth0
開啟 eth0 網絡接口
sudo ifconfig eth0 up
關閉 eth0 網絡接口
sudo ifconfig eth0 down
用于列出所有監聽的 TCP 端口以及與之關聯的進程
netstat -ntlp
用于查找所有與端口 80 相關的網絡連接,包括監聽和已建立的連接
netstat -aonp|grep 80
用于計算與端口 80 相關的網絡連接數量
netstat -nat|grep -i "80"|wc -l
ssh user@remote_host
scp /path/to/file user@remote_host:/remote/path/
curl www.linuxyz.cn
curl -H "Content-Type:application/json" -X POST -d '{"appId": "akulaku-business","data": "081915122488","token": "963444d4-88f9-4c38-b2c2-19b60b2d8"}' 'http://pre-oapi.akulaku.local/midendkmshttp/encrypt'
這將嘗試連接到 example.com 的 23 號端口(Telnet 默認端口),并開始一個 Telnet 會話 :一般用來檢查網絡是否通
telnet example.com 23
ftp ftp_server
wget www.linuxyz.cn -o google.html
參考11 進程管理命令
參考11 進程管理命令
echo 'Hello, World!'
printf 'Name: %s\nAge: %d\n' 'Alice' 20
echo 'Hello, World!' | sed 's/World/Shell/g'
echo -e 'name\tage\nAlice\t20\nBob\t22' | awk '{if ($2 >=21) print $1}'
創建歸檔文件: directory/ 目錄下的所有文件和子目錄打包成 archive.tar.gz 歸檔文件,并使用 gzip 壓縮
tar -czvf archive.tar.gz directory/
解壓歸檔文件:從 archive.tar.gz 歸檔文件中解壓所有文件到當前目錄
tar -xzvf archive.tar.gz
查看歸檔文件內容:列出 archive.tar.gz 歸檔文件中的所有文件和目錄
tar -tvf archive.tar.gz
gzip:用于文件壓縮或解壓。
壓縮文件:
gzip file.txt
解壓文件:
gzip -d file.txt.gz
gunzip file.gz
zip -r archive.zip folder
unzip archive.zip
sudo hdparm -i /dev/sda
顯示所有進程,按 CPU 使用率排序:
ps aux --sort=-%cpu
結合 grep 命令來過濾輸出結果:
ps aux | grep java
ps -ef | grep java
統計當前系統線程數量:
pstree -p|wc -l
終止 PID 為 1234 的進程:
kill 1234
優雅地終止 PID 為 5678 的進程:
kill -SIGTERM 5678
強制終止 PID 為 9101 的進程:使用 kill -9 強制終止進程時需謹慎,因為這會導致進程立即退出,可能不會釋放其占用的資源,也不會執行任何清理操
kill -9 9101
pkill process_name
輸入:set
輸出:展示所環境變量以及函數
輸入:
export VARName='Value'
echo $VARName
輸出結果:
Value
輸入:sudo halt
輸入:sudo reboot
關閉系統:sudo shutdown -h now
重啟系統:sudo shutdown -r now
更改密碼:passwd
打開文件:
vi vhost.conf
進入編輯模式:
當你第一次打開文件時,你會進入“普通模式”(Normal Mode)。
按下i鍵進入“插入模式”(Insert Mode),在這里可以開始編輯文件。
退出編輯器:
在普通模式下,按下:鍵,然后輸入q(表示退出)并按Enter鍵退出編輯器。
保存并退出:
在普通模式下,按下:鍵,然后輸入wq(表示寫入并退出)并按Enter鍵保存更改并退出編輯器。
撤銷更改:
在普通模式下,輸入u鍵撤銷最近的操作。
查找文本:
在普通模式下,按下:/ 鍵,然后輸入要查找的文本,并按Enter鍵。查找zone :/zone
跳轉到行:
在普通模式下,按下:鍵,輸入行號并按Enter鍵跳轉到指定行號。
設置行號:
在普通模式下,按下:鍵,輸入set number或簡寫為set nu啟用行號顯示。
復制和粘貼:
在普通模式下,使用v(可視模式)選擇文本,然后使用y(復制)復制文本,再使用p(粘貼)粘貼文本
whereis:當你需要快速找到命令的多個相關文件(如二進制、源代碼、手冊頁)時使用。
which:當你只需要知道某個命令的可執行文件路徑時使用。
whereis:默認會在/usr/bin, /bin, /usr/sbin, /sbin, /usr/local/bin等標準目錄下搜索。
which:只搜索PATH環境變量中列出的目錄。
輸入:whoami
輸出:user
輸入:date
輸出: Tue Dec 21 02:16:12 UTC 2021
顯示歷史命令:
history
顯示特定數量的歷史命令:
history 10
查看特定用戶的命令歷史:-u選項用于查看指定用戶username的命令歷史
history -u username
搜索歷史命令:
history | grep "search_pattern"
果有人說開發Web系統,從來沒用到過HTML標簽中的表單標簽的話,那他或她,肯定不是在逗你玩,而是他們開發的是靜態頁面。如果是動態內容的話,表單標簽是必須用到的,畢竟它們是標簽界的杠把子,表單是一個包含表單元素的區域。
表單元素是允許用戶在表單中輸入內容,比如:文本域(textarea)、下拉列表、單選框(radio-buttons)、復選框(checkboxes)等等。
細細想來,現在上什么平臺,好像都要登錄之后,才可以完成相關的業務操作。上電商平臺購物,登錄之后才可以付款,付款了才有貨收;上自媒體平臺,只有登錄之后,才可以發文章,發視頻。既然登錄這么常用,那我就HTML實現一下。
<form>標簽用于創建供用戶輸入的HTML表單,它的action屬性綁定后端的業務處理方法(URL);method方法可選get或post。
<input>標簽規定了用戶可以在其中輸入數據的輸入字段,type指定輸入類型,text為文本,password為密碼,可指定的類型還有好多種。name屬性指定input的名稱,而你輸入的值,會被賦給value屬性。
<button>按鈕標簽,常用的類型的有提交用戶輸入內容的submit,有重置清空表單的reset。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>登錄之后更美</title>
</head>
<body>
<form action="login">
賬號:<input type="text" name="account"/><br/>
密碼:<input type="password" name="pwd"/><br/><br/>
<button type="submit">
登錄
</button>
<button type="reset">
重置
</button>
</form>
</body>
</html>
輸出結果
好多平臺,為了給你推薦個性化的需求,會有一個頁面讓你填寫個人信息,內容常常會有你的愛好、性別、生日什么的。如果你不填寫,不友好的平臺就不給你跳過。如果遇到這種平臺,我一般就直接跳過,不再用,畢竟有些信息是個人隱私,比如老陳搞了10多年IT。
radio單選按鈕,屬性name的值相同時,多選一,否則都可以選擇;
checkbox復習框:可以勾選多個。常用在興趣等多個類型選擇中;
select下拉列表框:在多個預設選項中,選擇其中一個;
textarea多行輸入框:輸入的內容較多時,就用它。rows屬性指定行數,cols指定列數。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>亮出你的美</title>
</head>
<body>
個人信息登記 <br/> <br/>
<form action="infoSubmit">
姓名:<input type="text" name="name"/><br/>
性別:<input type="radio" name="gender" value="male"/>男
<input type="radio" name="gender" value="female"/>女<br/>
興趣:<input type="checkbox" name="p" value="p"/>編程
<input type="checkbox" name="k" value="k"/>看書
<input type="checkbox" name="c" value="c"/>看電影
<input type="checkbox" name="l" value="l"/>看美女
<br/>
愛好:
<select name="love">
<option value="x">下象棋</option>
<option value="j">下軍旗</option>
<option value="t">下跳棋</option>
<option value="w">下圍棋</option>
</select>
<br/><br/>
<textarea rows="10" cols="35">個人簡介</textarea><br/><br/>
<button type="submit">
提交
</button>
<button type="reset">
重置
</button>
</form>
</body>
</html>
輸出結果
好了,有關html表單的內容,老陳講完了,如果覺得對你有所幫助,希望老鐵能轉發點贊,讓更多的人看到這篇文章。你的轉發和點贊,就是對老陳繼續創作和分享最大的鼓勵。
一個當了10年技術總監的老家伙,分享多年的編程經驗。想學編程的朋友,可關注:老陳說編程。分享Python,前端(小程序)、App和嵌入式方面的干貨。關注我,沒錯的。
#前端##程序員##HTML5##表單##數據#
大家好, 我是徐小夕, 之前和大家分享了一個在線文檔編輯器PowerNice, 它可以輕松幫我們編寫文檔并一鍵導出多種格式比如html,pdf, md, png圖片等, 如下:
image.png
最近為了讓編輯器滿足更多場景需求, 我開發了桌面端軟件版本——powernice-electron, 支持mac 和 window, 大家感興趣可以參考一下.
image.png
接下來我來對powernice 技術實現和功能做一個介紹.
作為一名技術工作者, 我們經常會遇到編寫技術文檔, 技術分享等需求, 網上也有很多現成的文檔管理工具, 出于好奇心, 我拉著朋友一起實現了一個, 用來自給自足. 接下來就來介紹一下輕量級且靈活方便的文檔編輯工具—— 「powerNice」.
「powerNice」 提供兩種方式來編寫文章/文檔, 即程序員最喜歡的 markdown, 也可以使用非技術人員最容易上手的富文本編輯器.
實現 「powerNice」 在線文檔編輯器我們采用如下核心技術棧:
多模式編輯主要是指我們可以用富文本和md編輯器來編輯我們的文章, 我們采用最熟悉的 React 來實現, 效果如下:
目前支持2套主題, 淺色和深色, 主要從用戶體驗的角度方便用戶夜間寫作. 效果如下:
為了提高我們的寫作效率以及對文章的多路復用, 我們提供了一鍵導入導出文件等功能, 具體如下:
使用截圖如下:
下載的html內容預覽如下:
還原度還是非常高的~
4. 多模式預覽
多模式預覽主要是右側的預覽區, 我們支持手機端預覽和pc端預覽, 如下圖:
5. 字數行數統計
字數行數統計主要是幫助作者做內容統計, 這塊實現不是很難, 我們看看預覽效果:
文章管理主要是管理用戶編寫的內容, 這里因為我們做的是線上工具, 用戶識別主要采用瀏覽器指紋識別技術來區分用戶, 用戶可以輕松在編輯器文章列表中切換文章進行編輯, 效果如下:
{
name: 'file',
showUploadList: false,
beforeUpload(file: any): any {
const reader=new FileReader()
reader.onload=function(e: Event) {
const data=(e as any).target.result
if (editor==='richText') {
// ...
} else {
// ...
}
}
reader.readAsText(file)
},
}
核心代碼如下:
const doc=document.querySelector('.for-markdown-preview') as HTMLElement
const html=createMDHtml(doc.innerHTML, article)
file=new File([html], `${moment().format('YYYYMMDDHHmmss')}.html`, { type: 'text/html;charset=utf-8' })
// 下載文件
saveAs(file)
瀏覽器指紋這塊知識點涉及的比較多, 筆者這里簡單介紹一下canvas指紋.
?
「Canvas指紋」是利用系統之間, 字體渲染引擎, 抗鋸齒、次像素渲染等處理方式的差異而實現的一種指紋識別技術. 我們使用canvas將同樣的文字轉成圖片, 即便使用Canvas繪制相同的元素,但由于上述的差別得到的結果也是不同的。
?
*請認真填寫需求信息,我們會在24小時內與您取得聯系。