Unity熱更新04-XLua呼叫C#-03-Lua呼叫C#陣列
Linux基礎
Linux常用命令
useradd
建立新使用者passwd
為使用者設定密碼userdel
刪除使用者su
切換使用者,su
是switch user
的縮寫,從新的使用者狀態下輸入exit
即可退回到剛才的使用者狀態date
顯示系統時間cal
顯示日曆
cal 3 2003
顯示2003年3月的日曆timedatectl status
顯示詳細時間clear
清屏ls
list的縮寫,顯示資料夾內的目錄和檔案cd
進入目錄
cd ..
進入父目錄,cd /
進入根目錄,cd
或cd ~
進入home下的使用者目錄tree
顯示樹形的層級目錄結構,非原生命令,需要安裝treepwd
顯示當前所在目錄mkdir
建立一個新目錄mkdir -p
級聯建立新目錄,即使上級目錄不存在,會按目錄層級自動建立目錄,好處是一次可以建立多級資料夾rmdir
刪除一個空資料夾,如果目錄非空,會出現錯誤資訊 Directory not emptyrmdir -p
級聯刪除空資料夾touch
建立檔案,當檔案不存在時,則建立一個新的檔案。touch只能建立空檔案,可更改檔案或目錄的日期時間,包括存取時間和更改時間
例:touch test.txt
在當前目錄下建立test.txt(注:Linux下沒有檔案字尾名區分檔案型別之說,系統檔案型別只有可執行檔案和不可執行檔案)vim
chmod
修改檔案或目錄的許可權cat
從第一行開始顯示檔案內容tac
從最後一行開始顯示檔案內容more
功能類似於cat,more會一頁一頁的顯示,按space空格鍵顯示下一頁,按b鍵上一頁顯示less
與more功能類似,less可以隨意瀏覽檔案,more僅能向前移動,不能向後移動,而且 less 在檢視之前不會載入整個檔案head
顯示檔案的開頭內容,預設顯示前10行,head test.txt -n 20
head -n 20 test.txt
顯示檔案的前20行內容tail
顯示指定檔案末尾內容,不指定檔案時,作為輸入資訊進行處理,常用檢視日誌檔案,tail test.txt -n 20
tail -n 20 test.txt
顯示檔案的後20行內容rm
刪除檔案,不能刪除目錄rm -f
強制刪除檔案,不能刪除目錄rm -rf
遞迴強制刪除資料夾下的所有資料夾和檔案cp
將檔案複製到指定目錄mv
移動目錄或檔案,重新命名目錄或檔案
例:mv 557.txt ../a12
將557.txt檔案移動到父目錄的a12資料夾下,mv a12 a34
將目錄a12重新命名為目錄a34grep
強大的文字搜尋命令
grep 23 test.txt
在當前目錄中,test.txt檔案中包含23字元的行,並打印出該字串的行ln
建立連結echo
which
檢視可執行檔案的位置whereis
檢視檔案的位置locate
配合資料庫檢視檔案位置find
實際搜尋硬碟查詢檔名稱tar
用來壓縮和解壓檔案。tar 本身不具有壓縮功能,只具有打包功能,有關壓縮及解壓是呼叫其它的功能來完成。弄清兩個概念:打包和壓縮。打包是指將一大堆檔案或目錄變成一個總的檔案;壓縮則是將一個大的檔案通過一些壓縮演算法變成一個小檔案,tar -cvf log.tar 1.log,2.log
將兩個檔案打包成tar包chown
將指定檔案的擁有者改為指定的使用者或組,使用者可以是使用者名稱或者使用者 ID;組可以是組名或者組 IDlsblk
檢視當前磁碟狀況,sata硬碟名稱一般都為sd開頭,ssd硬碟名稱為nvme開頭df
顯示磁碟空間使用情況。獲取硬碟被佔用了多少空間,目前還剩下多少空間等資訊,如果沒有檔名被指定,則所有當前被掛載的檔案系統的可用空間將被顯示。預設情況下,磁碟空間將以 1KB 為單位進行顯示du
檢視目錄和檔案所使用磁碟空間的大小,du -h ./test.txt
以易讀方式顯示當前目錄下test.txt檔案的大小wc
統計指定的檔案中的行數,單詞數,位元組數,檔名,並將統計結果輸出
cat test.txt | wc -l
統計輸出結果的行數ps
檢視當前執行的程序狀態top
顯示當前系統正在執行的程序的相關資訊,包括程序 ID、記憶體佔用率、CPU 佔用率等kill
終止程序
kill -9 $(ps -ef | grep pro1)
先使用ps查詢程序pro1,然後用kill殺掉free
顯示系統記憶體使用情況,包括實體記憶體、互動區記憶體(swap)和核心緩衝區記憶體netstat
顯示網路狀態,首先要安裝net-toolssync
在記憶體中尚未被更新的資料被寫入硬碟中uname -a
uname -r
檢視當前作業系統版本的核心資訊cat /proc/version
檢視當前作業系統版本資訊cat /etc/issue
cat /etc/redhat-release
檢視當前作業系統發行版資訊cat /proc/cpuinfo
檢視cpu資訊hostname
檢視主機名稱
Linux重要檔案
/etc目錄下的重要檔案
/etc/rc.local 存放開機自啟動內容的檔案。chkconfig -一般用來管理yum/rpm包裝的服務。
/etc/fstab 開機自動掛載檔案
/etc/inittab 執行級別的配置檔案
/etc/profile 環境變數配置檔案
/etc/bashrc 配置命令別名
/etc/motd 登陸系統後顯示檔案內容
/etc/issue /etc/issue.net 登陸系統前顯示
/etc/locale.conf 字符集配置檔案
/etc/passwd 賬號資訊檔案
/etc/shadow 賬號密碼資訊檔案
/etc/sudoers 可以執行sudo命令的配置檔案(許可權提升)
/etc/rsyslog.conf 日誌設定檔案,限C6.X
/etc/resolv.conf 設定Linux本地的DNS的配置檔案
/etc/host 域名和IP地址的對應關係
/var目錄下的重要檔案
/var/log/messages 預設的系統日誌檔案,非常重要
/var/log/secure 記錄系統登陸資訊
/var/spool/cron/root 定時任務crontab的預設路徑,按使用者名稱命令的檔案。
/var/spool/clientmqueqe sendmail臨時檔案目錄,需定時清理clientmqueue目錄垃圾檔案防止佔滿磁碟空間。
/proc目錄下的重要檔案
/proc 虛擬目錄,是記憶體的對映,核心和程序的虛擬檔案系統目錄
/proc/version 核心版本
/proc/cupinfo 關於處理器的資訊,如型別,型號和效能等
/proc/meminfo 系統記憶體資訊
/proc/interrupts 正在使用的中斷
/proc/loadavg 系統負載的資訊
/usr目錄下的重要檔案
/usr/local 自編譯安裝軟體存放目錄
/usr/src 核心原始碼存放目錄
/dev目錄下的重要檔案
/dev/sda磁碟
/dev/urandom (生成輸出隨機內容檔案)
/dev/urandom 生成隨機內容 tr + head
/dev/zero 不斷輸出資訊
/dev/null (黑洞 把東西放進去就沒了)
/dev/urandom 生成輸出隨機內容
Linux常用快捷鍵
- vim中可輸入
/關鍵字
查詢該文件中的內容,查詢時dd鍵
剪下一行命令,yy鍵
複製一行命令,gg鍵
回到文件頂部,x鍵
剪下一個字元,p鍵
貼上一行命令,n鍵
查詢下一個符合條件的資訊,esc鍵 :wq
儲存退出編輯狀態, - tab鍵提示命令或補全命令
- ctrl+C停止當前程式
- 有圖形介面的情況下,按CTRL+Alt+f1就可以切換到文字介面,按CTRL+Alt+f2就可以切換到圖形介面
- 終端翻頁快捷鍵shift+pgup,shift+pgdn
基本知識
-
shell和bash的關係
Shell 是一個用 C 語言編寫的程式,它是使用者使用 Linux 的橋樑。Shell 既是一種命令語言,又是一種程式設計語言。
Shell 是指一種應用程式,這個應用程式提供了一個介面,使用者通過這個介面訪問作業系統核心的服務Shell 指令碼(shell script),是一種為 shell 編寫的指令碼程式。
業界所說的 shell 通常都是指 shell 指令碼,但讀者朋友要知道,shell 和 shell script 是兩個不同的概念bash(GNU Bourne-Again Shell)是最常用的一種shell。是當前大多數Linux發行版的預設Shell。其他的shell還有:sh、bash、ksh、rsh、csh等。Ubuntu系統常用的是bash,Bio-linux系統是基於ubuntu定製的,但是卻使用了zsh。
sh的全名是Bourne Shell。名字中的玻恩就是這個Shell的作者。
而bash的全名是Bourne Again Shell。最開始在Unix系統中流行的是sh,而bash作為sh的改進版本,提供了更加豐富的功能。一般來說,都推薦使用bash作為預設的Shell。
Shell相當於是一個翻譯,把我們在計算機上的操作或我們的命令,翻譯為計算機可識別的二進位制命令,傳遞給核心,以便呼叫計算機硬體執行相關的操作;同時,計算機執行完命令後,再通過Shell翻譯成自然語言,呈現在我們面前。
echo $SHELL
可以檢視當前Linux系統使用的shell型別 -
vi和vim的關係
vi和vim都是Linux中的編輯器,不同的是vim比較高階,可以視為vi的升級版本,它不僅相容vi的所有指令,而且還包含一些新的特性,vi適用於文字編輯,vim更適用於coding。vi有3個模式:插入模式、命令模式、低行模式。
- 插入模式:在此模式下可以輸入字元,按ESC將回到命令模式。
- 命令模式:可以移動游標、刪除字元等。
- 低行模式:可以儲存檔案、退出vi、設定vi、查詢等功能(低行模式也可以看作是命令模式裡的)。
vim一共有4個模式:
- 正常模式 (Normal-mode)
- 插入模式 (Insert-mode)
- 命令模式 (Command-mode)
- 可視模式 (Visual-mode)