導航:首頁 > 編程系統 > linux雙冒號

linux雙冒號

發布時間:2023-03-19 06:44:45

㈠ C++ 雙冒號開頭的語法是什麼意思

命名空間限定。畢困
std::string
表示std命名空間下的 string類。
直接::開始,表示頂層命名空間(全局變數)std::string -> ::std::string 這樣也可以。
::和 文件路徑的 / 可以對照理解。

linux下面沒有盤符之分。 只有一個盤,所以手或念也就沒有C,D,E,F這種了。
/usr/share/abc.txt abc.txt 位於 /usr/share目錄下
/abc.txt abc.txt直團坦接位於硬碟下。第一個/就代表硬碟根目錄。

㈡ linux shell 腳本 wak語句中 awk 'BEGIN { FS="'"'"'";RS="\n"} {for (i=2;i<=NF;i=i+

FS表示操作的時候以什麼為分割符
RS表示記錄分割符(Record Separator)
即RS表示的是awk操作回最小單答位的邊界,而FS是這個最小單位中分割的符號
例如:
101,John Doe:102,Jason Smith:103,Raj Reddy
如果不指定RS,指定FS為「,」,那麼awk將101作為第一列,剩下的全部為第二列,如果指定RS=":",那麼awk就會將內容作為三「行」,第一列包括101,102和103,第二列包括John Doe,Jason Smith和Raj Reddy

㈢ 從一台linux傳文件到另一台linux不被發現

方法如下。
在日常伺服器租用中,有時需要將文件從一台伺服器傳到另一台伺服器,下面給大家介紹四種linux伺服器之間傳輸文件方式。
1.scpscp就是secure ,是用來進行遠程文件拷貝的。數據傳輸使用 ssh,並且和ssh 使用相同的認證方式,提供相同的安全保證 。2.rcp目標主機需要事先打開rcp功能,並設置好rcp的許可權:把源主機加入到可信任主機列表中,否則無法在源主機上使用rcp遠程復制文件到目標主機。3.wget,wget是一個從網路上自動下載文件的自由工具,支持通過HTTP、HTTPS、FTP三個最常見的TCP/IP協議下載,並可以使用HTTP代理。4.rsync,rsync是類unix系統下的數據鏡像備份工具,從軟體的命名上就可以看出來了——remote sync。它的操作方式和scp和相似,但是比scp強大很多。使用雙冒號分割主機名和文件路徑時,是使用rsync伺服器,這里不做介紹。

㈣ lua語言的跳轉指令怎麼用

lua中的標簽使用雙冒號。print("abcd")

㈤ 2009.9三級網路技術筆試真題 發到[email protected]

2009年9月全國計算機等級考試三級筆試試卷網路技術 (考試時間120分鍾,滿分100分) 一、選擇題(每題1分,共60分) (1)我國研製成功第一台通用電子管103計算機是在 A) 1957年 B) 1958年 C) 1959年 D) 1960年 (2)關於計算機應用的描述中,正確的是 A) 事務處理的數據量小、實時性不強 B) 智能機器人不能從事繁重的體力勞動 C) 計算機可以模擬經濟運行模式 D) 嵌入式裝置不能用戶過程式控制制 (3)關於客戶端計算機的描述中,錯誤的是 A) 包括台式機、筆記本及工作站等 B) 大多數工作站屬於圖形工作站 C) 可分為RISC工作站和PC工作站 D) 筆記本類手持設備越來越收到歡迎 (4)關於處理晶元的描述中,正確的是 A) 奔騰晶元是32位的 B) 雙核奔騰晶元是64位的 C) 超流水線技術內置多條流水線 D) 超標量技術可細化流水 (5)關於軟體的描述中,錯誤的是 A) 可分為系統軟體和應用軟體 B) 系統軟體的核心是操作系統 C) 共享軟體的坐著不保留版權 D) 自由軟體可自由復制和修改 (6)關於流每題的描述中,正確的是 A) 流媒體播放都沒有啟動延時 B) 流媒體內容都是線性組織的 C) 流媒體服務都採用客戶/伺服器模式 D) 流媒體數據流需要保持嚴格的時序關系 (7)對計算機網路發展具有重要影響的廣域網是 A) ARPANET B) Ethernet C) Token Ring D) ALOHA (8)關於網路協議的描述中,錯誤的是 A) 為網路數據交換制定的規制與標准 B) 由語法、語義與時序三個要素組成 C) 採用層次結構模型 D) 語法是對事件實現順序的詳細說明 (9)如果網路系統發送1bit數據所用時間為10-7s,那麼它的數據傳輸速率為 A) 10Mbps B) 100Mbps C) 1Gbps D) 10Gbps (10)在OSI參考模型中,負責實現路由選擇功能的是 A) 物理層 B) 網路層 C) 會話層 D) 表示層 (11)關於萬兆乙太網的描述中,正確的是 A) 應考慮介質訪問控制問題 B) 可以使用屏蔽雙絞線 C) 只定義了區域網物理層標准 D) 沒有改變乙太網的幀格式 (12)在Internet中實現文件傳輸服務的協議是 A) FTP B) ICMP C) CMIP D) POP (13)具有括撲中心的網路結構是 A) 網狀拓撲 B) 樹狀拓撲 C) 環型拓撲 D) 星型拓撲 (14)IEEE針對無線區域網制定的協議標準是 A) IEEE 802.3 B) IEEE 802.11 C) IEEE 802.15 D) IEEE 802.16 (15)1000BASE-LX標准支持的傳輸介質是 A) 單模光纖 B) 多模光纖 C) 屏蔽雙絞線 D) 非屏蔽雙絞線 (16)關於共享介質區域網的描述中,錯誤的是 A) 採用廣播方式發送數據 B) 所有網路結點使用同一信道 C) 不需要介質訪問控制方法 D) 數據在傳輸過程中可能沖突 (17)如果千兆乙太網交換機的總帶寬為24Gbps,其全雙工千兆埠數量最多為 A) 12個 B) 24個 C) 36個 D) 48個 (18)在TCP/IP參考模型中,提供無連接服務的傳輸層協議是 A) UDP B) TCP C) ARP D) OSPF (19)關於網橋的描述中,正確的是 A) 網橋無法實現地址過來與幀轉發能夠 B) 網橋互聯的網路在網路層都採用不同協議 C) 網橋是在數據鏈路層實現網路互聯的設備 D) 透明網橋由源結點實現幀的路由選擇功能 (20)以下不屬於即時通信的是 A) DNS B) MSN C) ICQ D) QQ (21)OSI參考模型的網路層對於TCP/IP參考模型的 A) 主機-網路層 B) 互聯網 C) 傳輸層 D) 應用層 (22)關於博客的描述中,錯誤的是 A) 以文章的形式實現信息發布 B) 在技術上屬於網路共享空間 C) 在形式上屬於網路個人出版 D) 內容只能包含文字與圖片 (23)乙太網幀的地址欄位中保存的是 A) 主機名 B) 埠號 C) MAC地址 D) IP地址 (24)關於操作系統的描述中,正確的是 A) 只管理硬體資源。改善人機介面 B) 驅動程序直接控制各類硬體 C) 操作系統均為雙內核結構 D) 進程地址空間是文件在磁碟的位置 (25)關於網路操作系統的描述中,錯誤的是 A) 文件與列印服務是基本服務 B) 通城支持對稱處理技術 C) 通常是多用戶、多任務的 D) 採用多進程方式以避免多線程出現問題 (26)關於Windows Server 2008 的描述中,正確的是 A) 虛擬化採用了Hyper-V技術 B) 主流CPU不支持軟體虛擬技術 C) 精簡版提高了安全性、降低了可靠性 D) 內置了Vmware模擬器 (27)關於Unix標准化的描述中,錯誤的是 A) Unix版本太多,標准化復雜 B) 出現了可移植操作系統介面標准 C) 曾分裂為POSIX和UI兩個陣營 D) 統一後的Unix標准組織是COSE (28)關於操作系用產品的描述中,正確的是 A) AIX是HP公司的產品 B) NetWare是Sun公司的產品 C) Solaris是IBM公司的產品 D) SUSE Linux是Novell公司的產品 (29)在Internet中,不需運行IP協議的設備是 A) 路由器 B) 集線器 C) 伺服器 D) 工作站 (30)HFC採用了以下哪個網路接入Intrenet? A) 有線電視網 B) 有線電話網 C) 無線區域網 D) 行動電話網 (31)以下哪個不是IP服務具有的特點? A) 不可靠 B) 無連接 C) 標記交換 D) 盡最大努力 (32)如果一台主機的IP地址為20.22.25.6,子網掩碼255.255.255.0,那麼該主機所屬的網路(包括子網)為 A) 20.22.25.0 B) 20.22.0.0 C) 20.0.0.0 D) 0.0.0.0 (33)如果需要將主機域名轉換為IP地址,那麼可使用的協議是 A) MIME B) DNS C) PGP D) TELNET (34)在IP報頭中設置「生存周期」域的目的是 A) 提高數據報的轉發效率 B) 提高數據報轉發過程中的安全性 C) 防止數據報在網路中無休止流動 D) 確保數據報可以正確分片 (35)在IP數據報分片後,通常負責IP數據報重組的設備是 A) 分片途徑的路由器 B) 源主機 C) 分片途徑的交換機 D) 目的主機 (36)某路由器收到了一個IP數據報,在對其報頭進行校驗後發現該數據報存在錯誤。路由器最有可能採用的動作是 A) 拋棄該數據報 B) 抑制該數據報源主機的發送 C) 轉發該數據報 D) 糾正該數據報的錯誤 (37)下圖為一個簡單的互聯網示意圖。其中,路由器S的路由表中到達網路10.0.0.0的下一跳步IP地址為 A) 40.0.0.8 B) 30.0.0.7 C) 20.0.0.6 D) 10.0.0.5 (38)關於RIP協議的描述中,正確的是 A) 採用鏈路-狀態演算法 B) 距離通常用寬頻表示 C) 向相鄰路由器廣播路由信息 D) 適合於特大型互聯網使用 (39)當使用TCP進行數據傳輸時,如果接收方通知了一個800直接的窗口值,那麼發送方可以發送 A) 長度為2000位元組的TCP包 B) 長度為1500位元組的TCP包 C) 長度為1000位元組的TCP包 D) 長度為500 位元組的TCP包 (40)在客戶/伺服器模式中,響應並請求可以採用的方案包括 A) 並發伺服器和重復伺服器 B) 遞歸伺服器和反復伺服器 C) 重復伺服器和串列伺服器 D) 並發伺服器和遞歸伺服器 (41)在Inteenet域名系統的資源記錄中,表示主機地址的對象類型為 A) HINFO B) MX C) A D) H (42)關於POP3和SMTP的相應字元串,正確的是 A) POP3以數字開始,SMTP不是 B) SMTP以數字開始,POP3不是 C) POP3和SMTP都不以數字開始 D) POP3和SMTP都以數字開始 (43)WWW系統採用傳輸協議是 A) DHCP B) XML C) HTTP D) HTML (44)為了驗證WWW伺服器的真實性,防止假冒的WWW伺服器欺騙,用戶可以 A) 對下載的內容進行病毒掃描 B) 驗證要訪問的WWW伺服器的CA證書 C) 將要訪問的WWW度武器放入瀏覽器的可信站點區域 D) 嚴禁瀏覽器運行ActiveX控制項 (45)下面哪個不是SNMP網路管理的工作方式? A) 輪詢方式 B) 中斷方式 C) 基於輪詢的中斷方式 D) 陷入制導論詢方式 (46)根據計算機信息系統安全保護等級劃分准則,安全要求最低的是 A) 指導保護級 B) 自主保護級 C) 監督保護級 D) 專控保護級 (47)下面屬於被動攻擊的是 A) 拒絕服務攻擊 B) 電子郵件監聽 C) 消息重放 D) 消息篡改 (48)Blowfish加密演算法處理的分組長度是 A) 56位 B) 64位 C) 128位 D) 256位 (49)下面不屬於公鑰加密演算法的是 A) RSA B) AES C) EIGamal D) 背包加密演算法 (50)關於數字簽名的描述中,錯誤的是 A) 通常能證實簽名的時間 B) 通常能對內容進行鑒別 C) 必須採用DSS標准 D) 必須能被第三方驗證 (51)在DES加密演算法中,不使用的基本運算是 A) 邏輯與 B) 異或 C) 置換 D) 移位 (52)關於IPSec的描述中,錯誤的是 A) Kerberos是為Novell網路設計的 B) 用戶須擁有數字證書 C) 加密演算法使用RSA D) Kerberos提供會話密鑰 (53)關於IPSec的描述中,錯誤的是 A) 主要協議是AH協議與ESP協議 B) AH協議保證數據完整性 C) 只使用TCP作為傳輸層協議 D) 將互聯成改造為有邏輯連接的層 (54)下面哪個不是密集組播路由協議? A) DVMRP B) MOSPF C) PIM-DM D) CBT (55)下面哪種P2P網路拓撲屬於混合式結構? A) Choeh B) Skype C) Pastry D) Tapestry (56)關於SIP協議的描述中,錯誤的是 A) 可以擴展為XMPP協議 B) 支持多種即時通信系統 C) 可以運行與TCP或UDP之上 D) 支持多種消息類型 (57)下面哪種業務屬於IPTV通信類服務? A) 視頻點播 B) 即時通信 C) 時移電視 D) 直播電視 (58)關於Skype特點的描述中,錯誤的是 A) 具有保密性 B) 高清晰音質 C) 多方通話 D) 只支持Windows平台 (59)數字版權管理主要採用數據加密、版權保護、認證和 A) 防病毒技術 B) 數字水印技術 C) 訪問控制技術 D) 放篡改技術 (60)關於網路搜索技術的描述錯誤的是 A) 採用分布式爬行技術 B) 採用超文本匹配分析技術 C) 採用網路分類技術 D) 採用頁面等級技術 二、填空題(每空2分,共40分) (1)地理信息系統的英文縮寫是 【1】 。 (2)伺服器運行的企業管理軟體ERP稱為 【2】 。 (3)IEEE 802 參考模型將 【3】 層分為邏輯鏈路控制子層與介質訪問控制子層。 (4)紅外無線區域網的數據傳輸技術包括: 【4】 紅外傳輸、全方位紅外傳輸與漫反射紅外傳輸。 (5)虛擬區域網是簡歷在交換技術的基礎上,以軟體方式實現 【5】 工作組的計劃分與管理。 (6)按網路覆蓋范圍分類, 【6】 用於實現幾十公里范圍內大量區域網的互聯。 (7)乙太網MAC地址的長度為 【7】 位。 (8)在Internet中,郵件伺服器間傳遞郵件使用的協議是 【8】 。 (9)活動目錄服務把域劃分為OU,稱為 【9】 。 (10)紅帽Linux企業版提供了一個自動化的基礎架構,包括 【10】 、身份管理、高可用性等功能。 (11)為了保證連接的可靠建立,TCP使用了 【11】 法。 (12)在路由表中,特定主機路由表項的子網掩碼為 【12】 。 (13)一個IPv6地址為21DA:0000:0000:0000:12AA:2C5F:FE08:9C5A。如果採用雙冒號表示法,那麼該IPv6地址可以簡寫為 【13】 。 (14)在客戶/伺服器模式中,主動發出請求的是 【14】 。 (15)FTP協議規定:想伺服器發送 【15】 命令可以進入被動模式。 (16)故障管理的主要任務是 【16】 故障和排除故障。 (17)對網路系統而言,信息安全主要包括二個方面:存儲安全和 【17】 安全。 (18)進行唯密文攻擊時,密碼分析者已知的信息包括:要解密的密文和 【18】 。 (19)P2P網路的基本結構之一是 【19】 結構,其特點是由伺服器負責記錄共享的信息以及回答對這些信息的查詢。 (20)QQ客戶端間進行聊天有兩種方式。一種是客戶端直接建立連接進行聊天,另一種是用伺服器 【20】 的方式實現消息的傳送。

㈥ 如何自定義電腦快捷鍵,錄制腳本

下載後解壓即可,autohotkey會自動識別.ahk後綴的文檔,所以新建一個txt文件,更改後綴為ahk即可作為您的快捷鍵包(綠色版需設置默認autohotkey打開).

以下是常見的使用場景:
場纖攜笑景1:替換內容,點一兩個按鍵就能替換任何常用內容
::xfx::感謝樓主分享!!!!!!
比如上面這個,雙冒號+快捷鍵+雙冒號+替換內容
::csdn::account{tab}12345678{ENTER}
上面的意思是:當你輸入csdn時,內容自動替換為"account"+tab鍵+密碼+回車鍵, 即實現了自動登錄

4
場景2:快捷鍵,這個使用上和場景1類似,基本記住雙冒號格式,就可以做任何替換操作了
下面是我經常用的一個功能,自動遠毀含程登錄linux伺服器,這個對於做web後台開發的人員來說應該非常實隱悉用,我們經常需要遠程ssh到伺服器,結果沒多久掉線又得重新找帳號密碼輸入;
下面的腳本可以一鍵登錄,相信減少了很多工作量.

5
場景3:錄制腳本(極其好用的功能)
我提供的綠色版里有一個AutoScriptWriter軟體,是用來記錄電腦操作,自動生成腳本的,使用方法:雙擊AutoScriptWriter.exe,如下圖:

㈦ 安裝rsync

Red Hat

Debian

Arch Linux

rsync 是一個常用的 Linux 應用程序,用於文件同步。
它可以在本地計算機與遠程計算機之間,或者兩個本地目錄之間同步文件(但不支持兩台遠程計算機之間的同步)。它也可以當作文件復制工具,替代 cp 和 mv 命令。
它名稱裡面的 r 指的是 remote,rsync 其實就是"遠程同步"(remote sync)的意思。與其他文件傳輸工具(如 FTP 或 scp)不同,rsync 的最大特點是會檢查發送方和接收方已有的文件,僅傳輸有變動的部分(默認規則是文件大小或修改時間有變動)。

本機使用 rsync 命令時,可以作為 cp 和 mv 命令的替代方法,將源目錄同步到目標目錄。

上面命令中, -r 表示遞歸,即包含子目錄。注意, -r 是必須的,否則 rsync 運行不會成功。 source 目錄表示源目錄, destination 表示目標目錄。

如果有多個文件或目錄需要同步,可以寫成下面這樣。

上面命令中, source1 、 source2 都會被同步到 destination 目錄。

-a 參數可以替代 -r ,除了可以遞歸同步以外,還可以同步元信息(比如修改時間、許可權等)。由於 rsync 默認使用文件大小和修改時間決定文件是否需要更新世悄,所以 -a 比 -r 更有用。下面的用法才是常見的寫法。

目標目錄 destination 如果不存在,rsync 會自動創建。執行上面的命令後,源目錄 source 被完整地復制到了目標目錄 destination 下面,即形成了 destination/source 的目錄結構。

如果只想同步源目錄 source 裡面的內容到目標目錄 destination ,則需要在源目錄後面加上斜杠。

上面命令執行後, source 目錄裡面的內容,就都被復制到了 destination 目錄裡面,並不會在 destination 下面創建一個 source 子目錄。

如果不確定 rsync 執行後會產生什麼結果,可以先用 -n 或 --dry-run 參數模擬執行的結果。

上面命令中, -n 參數模擬命令執行的結果,並不真的執行命令。 -v 參數則是將結果輸出到終端,這樣就可以看到哪些內容會被同步。

默認情況下,rsync 只確保源目錄的所有內容(明確排除的文件除外)都復制到目標目錄。它不會使兩個目錄保持相同,並且備返塵不會刪除文件。如果要使得目標目錄成為源目錄的鏡像副本,則必須使用 --delete 參數,這將刪除只存在於目標目錄、不存在於源目錄的文件。

上面命令中, --delete 參數會使得 destination 成為 source 的一個鏡像。仿禪

有時,我們希望同步時排除某些文件或目錄,這時可以用 --exclude 參數指定排除模式。

上面命令排除了所有 TXT 文件。

注意,rsync 會同步以"點"開頭的隱藏文件,如果要排除隱藏文件,可以這樣寫 --exclude=".*" 。
如果要排除某個目錄裡面的所有文件,但不希望排除目錄本身,可以寫成下面這樣。

多個排除模式,可以用多個 --exclude 參數。

多個排除模式也可以利用 Bash 的大擴號的擴展功能,只用一個 --exclude 參數。

如果排除模式很多,可以將它們寫入一個文件,每個模式一行,然後用 --exclude-from 參數指定這個文件。

--include 參數用來指定必須同步的文件模式,往往與 --exclude 結合使用。

上面命令指定同步時,排除所有文件,但是會包括 TXT 文件。

rsync 除了支持本地兩個目錄之間的同步,也支持遠程同步。它可以將本地內容,同步到遠程伺服器。

也可以將遠程內容同步到本地。

rsync 默認使用 SSH 進行遠程登錄和數據傳輸。
由於早期 rsync 不使用 SSH 協議,需要用 -e 參數指定協議,後來才改的。所以,下面 -e ssh 可以省略。

但是,如果 ssh 命令有附加的參數,則必須使用 -e 參數指定所要執行的 SSH 命令。

上面命令中, -e 參數指定 SSH 使用2234埠。

除了使用 SSH,如果另一台伺服器安裝並運行了 rsync 守護程序,則也可以用 rsync:// 協議(默認埠873)進行傳輸。具體寫法是伺服器與目標目錄之間使用雙冒號分隔 :: 。

注意,上面地址中的 mole 並不是實際路徑名,而是 rsync 守護程序指定的一個資源名,由管理員分配。

如果想知道 rsync 守護程序分配的所有 mole 列表,可以執行下面命令。

rsync 協議除了使用雙冒號,也可以直接用 rsync:// 協議指定地址。

六、增量備份
rsync 的最大特點就是它可以完成增量備份,也就是默認只復制有變動的文件。

除了源目錄與目標目錄直接比較,rsync 還支持使用基準目錄,即將源目錄與基準目錄之間變動的部分,同步到目標目錄。

具體做法是,第一次同步是全量備份,所有文件在基準目錄裡面同步一份。以後每一次同步都是增量備份,只同步源目錄與基準目錄之間有變動的部分,將這部分保存在一個新的目標目錄。這個新的目標目錄之中,也是包含所有文件,但實際上,只有那些變動過的文件是存在於該目錄,其他沒有變動的文件都是指向基準目錄文件的硬鏈接。

--link-dest參數用來指定同步時的基準目錄。

上面命令中,--link-dest參數指定基準目錄/compare/path,然後源目錄/source/path跟基準目錄進行比較,找出變動的文件,將它們拷貝到目標目錄/target/path。那些沒變動的文件則會生成硬鏈接。這個命令的第一次備份時是全量備份,後面就都是增量備份了。

下面是一個腳本示例,備份用戶的主目錄。

上面腳本中,每一次同步都會生成一個新目錄 ${BACKUP_DIR}/${DATETIME} ,並將軟鏈接 ${BACKUP_DIR}/latest 指向這個目錄。下一次備份時,就將 ${BACKUP_DIR}/latest 作為基準目錄,生成新的備份目錄。最後,再將軟鏈接 ${BACKUP_DIR}/latest 指向新的備份目錄。

轉自 阮一峰的網路日誌:rsync 用法教程

㈧ Linux下數據備份命令scp、rsync和後台運行

scp和rsync 均可實現文件的復制,但相比較,scp佔用系統資源較小,rsync速度較快。當小文件眾多時,rsync會導致硬碟I/O非常高,而scp基本不影響系統正常使用。可根據需要這倆選其一實現文件復制。

scp 是secure 的縮寫,scp是Linux系統下基於ssh登錄進行安全的遠程文件拷貝命令。
可以實現本地文件復制到遠程伺服器,也可以將遠程文件復制到本地。

rsync 是remote sync的縮寫。使用rsync備份數據時,不會直接覆蓋以前的數據(如果數據已經存在),而是先判斷已存在的數據和新數據的差異(默認規則是文件大小或修改時間有差異),只有數據不相同時才會把不相同的部分覆蓋。在僅作增量數據的時比scp靈活。

一般CentOS默認安裝rsync,若使用 rsync -v 提示找不到命令,可使用 yum install -y rsync 安裝。

單個冒號和雙冒號的區別 :使用rsync在遠程傳輸數據前,是需要進行登陸認證的,這個過程可使用ssh協議也可以使用rsync協議完成。單冒號(:)使用的是ssh協議;雙冒號(::)使用的是rsync協議。

默認情況下,rsync只確保源文件的所有內容(明確排除的文件除外)都復制到目標目錄。它不會使兩個目錄保持不同,並且不會刪除文件。如果要使目標目錄成為源目錄的鏡像副本,則使用--delete選項。可刪除只存在目標目錄,不存在於源目錄的文件。

增量備份算是一個經常使用的場景了。兩台伺服器之間進行文件定期備份,無需所有文件都一遍,僅復制有變動的文件。

具體做法是,第一次同步是全量備份,所有文件在基準目錄裡面同步一份。以後每一次同步都是增量備份,只同步源目錄與基準目錄之間有變動的部分,將這部分保存在一個新的目標目錄。這個新的目標目錄之中,也是包含所有文件,但實際上,只有那些變動過的文件是存在於該目錄,其他沒有變動的文件都是指向基準目錄文件的硬鏈接。

--link-dest 參數用來指定同步時的基準目錄。

上面命令中, --link-dest 參數指定基準目錄 /compare/path ,然後源目錄 /source/path 跟基準目錄進行比較,找出變動的文件,將它們拷貝到目標目錄 /target/path 。那些沒變動的文件則會生成硬鏈接。這個命令的第一次備份時是全量備份,後面就都是增量備份了。

一般伺服器之間復制文件都比較大,為防止誤操作,最好在後台運行。但因為需要和遠程伺服器之間的ssh通訊多是需要密碼的,所以不能直接使用nohup 放置於後台。無論是scp還是rsync都可操作如下:

後台和前台任務的切換

scp不支持斷點續傳,掛起scp進程可能導致數據缺失。傾向於使用rsync。

如果有其他任務需要使用nohup後台運行,但執行時卻忘記了使用nohup,也可參照此方法進行設置。

參考:1. Linux之scp命令及後台運行scp

㈨ 樹莓派A➕為什麼沒有網路介面可以用網路嗎在線等急

你好,為純答了減輕重量,樹莓派A+只保留了一個USB介面。但是他其實是可以上網的,而且是無線網路配置。首先你要購買硬體無線網卡。然後配置無線網卡。進入Linux命令行之後,直接輸入sudo nano /etc/network/interfaces打開樹莓派網路配置文件。進入interface文件,我們可以看到默認配置為dh cp方式。然後你就要根據你的網路環並返境設置網路地址。把原來內容全部刪掉。輸入auto ethiface eth0 inet static。再輸入靜態ip地址address。網路掩碼net mask。做蔽慧和網關gateway這個具體格式,你可以在網路上搜一下。然後輸入雙冒號wq保存。都可以連接無線網路了。

㈩ 如何獲取PHP命令行參數

如何獲取PHP命令行參數

使用 PHP 開發的同學多少都會接觸段並過 CLI 命令行。經常會有一些定時任務或者一些腳本直接使用命令行處理會更加的方便,有些時候我們會需要像網頁的 GET 、 POST 一樣為這些命令行腳本提供參數。比如在針對某些日期做統計的腳本,就需要傳遞一個日期給它,這樣我們就統計指定日期的一些數據。這類需求應該非常常見,那麼,我們都是如何來接收這些命令行的參數的呢?今天,就來介紹一下這方面的內容。

$argv 獲得所有空格分隔的參數列表

這個變數估計是大家用得比較多的一個接參變數了。它是 PHP 為我們准備好的一個固定變數,目的就是獲取傳遞給腳本的參數數組。

print_r($argv); // php 如何獲取PHP命令行參數.php --a=1 -b=2 -c=3 -d=4 --e=5 ccc ddd // Array // ( // [0] => 如何獲取PHP命令行參數.php // [1] => --a=1 // [2] => -b=2 // [3] => -c=3 // [4] => -d=4 // [5] => --e=5 // [6] => ccc // [7] => ddd // )

這個數組是以參數間隔的空格進行分隔的。第1個元素是當前運行的腳本文件名,也就是說,不管有沒有參數,這個變數一定會有一個 $argv[0] 表段燃顫示的是當前的腳本文件名。

在日常的開發需求中,其實使用這個變數就已經夠用了。但是這明顯不會是我們今天的主題,大家注意到上面的代碼中我們有很多參數是 -x=xxx 的形式,這種形式的參數是不是和 Linux 的命令選項非常像,沒錯,這就是我們今天要重點介紹的:從命令行參數列表中獲取選項。

getopt() 從命令行參數列表中獲取選項

其實就是這樣一個簡單的函數,我們就可以像 Linux 的命令選項一樣獲取指定的命令值。而且不是像 $argv 按空格進行分隔,命令選項函數會將這些命令選項封裝成數組,組成以選項名為鍵,以等號後面的內容為值的數組,更加方便我們的使用。

// php 如何獲取PHP命令行參數.php --a=1 -b=2 -c=3 -d=4 --e=5 ccc ddd print_r(getopt('a:b:c:d:e:f:')); // Array // ( // [b] => 2 // [c] => 3 // [d] => 4 // )

是不是很神奇,而且非常直觀吧,我們直接就拿到了 b 、 c 、d 的內容並且是格式非常清晰的鍵值數組形式。有同學要問了,a 和 e 呢?還有後面的 ccc 、 ddd 呢?

首先要說明的是,ccc 和 ddd 不是標準的選項參數,也就是說,這個函數接收的內容是以 - 開頭的選項,所以 ccc 和 ddd 不會在這里輸出,並且需要注意的是,非選項參數會中斷選項參數的獲取,在 ccc 之後如果繼續添加 - 開頭的選項也是無法獲取到的,這個我們後面還會看到。而 -- 開頭的選項參數呢?我們直接看下面的長選項功能。

長選項 // php 如何獲取PHP命令行參數.php --a=1 -b=2 -c=3 -d=4 --e=5 ccc ddd print_r(getopt('', ['a:','b:','c:','d:','e:','f:'])); // Array // ( // [a] => 1 // [e] => 5 // )

沒錯,getopt() 函數的第二個參數就是定義這種 -- 開握敗頭的長選項的,而且需要注意的是,第一個參數是字元串類型,第二個長選項參數是數組類型的。那麼我們把它們結合起來,就當然可以獲取到全部的參數信息啦!

// php 如何獲取PHP命令行參數.php --a=1 -b=2 -c=3 -d=4 --e=5 ccc ddd print_r(getopt('a:b:c:d:e:f:', ['a:','b:','c:','d:','e:','f:'])); // Array // ( // [a] => 1 // [b] => 2 // [c] => 3 // [d] => 4 // [e] => 5 // )

OK,參數選項獲取沒問題了吧,細心的同學肯定又發現了一個問題,這個 getopt() 函數的參數中定義的選項名稱後面為啥都要加個冒號?這就涉及到我們的冒號規則了,請直接往下看。

冒號規則

getopt() 的前兩個參數都支持一套關於選項獲取的規則:

單獨的字元(不接受值) 後面跟隨冒號的字元(此選項需要值) 後面跟隨兩個冒號的字元(此選項的值可選)

我們還是直接通過代碼來看一下。

// 一 // php 如何獲取PHP命令行參數.php --a=1 -b=2 -c=3 -d=4 --e=5 ccc ddd print_r(getopt('abcdef')); // Array // ( // [b] => // [c] => // [d] => // ) // 二 // php 如何獲取PHP命令行參數.php -f print_r(getopt('f::')); // Array // ( // [f] => // ) print_r(getopt('f:')); // Array // ( // ) // 三 // php 如何獲取PHP命令行參數.php -f 22 print_r(getopt('f::')); // Array // ( // [f] => // ) print_r(getopt('f:')); // Array // ( // [f] => 22 // ) // 四 // php 如何獲取PHP命令行參數.php -f=22 print_r(getopt('f::')); // Array // ( // [f] => 22 // ) print_r(getopt('f:')); // Array // ( // [f] => 22 // )

這一段比較長,我們一塊一塊來看。首先是不帶冒號的 abcdef 寫法,返回的數組中都包含鍵,但沒有值,對應上面的規則就是不接受這些參數選項的值,你傳了這些參數選項也是只有鍵名而內容是空的。

第二段是定義了一個參數,但是不給值,這時,雙冒號 :: 會有鍵名,而單冒號 : 則什麼都沒有。

第三段是空格形式的選項值,雙冒號 :: 有鍵名但沒有值,單冒號 : 鍵值正常。

第四段是等號 = 形式的選項值,單雙冒號都正常接收到鍵值。

選項參數中斷

上文中我們提到過參數中斷的問題,就是在選項參數之後如果有一個非選項參數的參數出現,getopt() 就無法再獲取到這個非選項參數後面的所有內容了。

// php 如何獲取PHP命令行參數.php -f=22 aa -b=33 // 選項的解析會終止於找到的第一個非選項,之後的任何東西都會被丟棄。 // Array // ( // [f] => 22 // )

通過這個測試可以清晰的看出後面的 b 選項無法獲取。這時,如果我們想知道選項參數在什麼地方或者因為哪個參數而中斷的話,就可以使用 getopt() 函數的第三個參數了。

// php 如何獲取PHP命令行參數.php -f=22 aa -b=33 $optind = null; getopt('f:b:', [], $optind); echo $optind, PHP_EOL; // 返回中斷位置的索引值,2 echo $argv[$optind], PHP_EOL; // 等同於 $argv 的索引順序,aa

注釋已經寫得很清晰了,第三個參數會回調一個參數選項中斷位置的索引,並且這個索引是和 $argv 的索引順序位置一致的。

總結

說實話,在沒看文檔前真的只知道有一個 $argv 變數可以用來獲取命令行腳本的參數,通過這次學習才發現原來還有一個這么強大的選項參數函數。學習的過程非常簡單,如何運用到真實的項目中才是關鍵所在,加油學習,努力實踐吧!

測試代碼:

https://github.com/zhangyue0503/dev-blog/blob/master/php/202006/source/%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96PHP%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%8F%82%E6%95%B0.php

閱讀全文

與linux雙冒號相關的資料

熱點內容
maya粒子表達式教程 瀏覽:84
抖音小視頻如何掛app 瀏覽:283
cad怎麼設置替補文件 瀏覽:790
win10啟動文件是空的 瀏覽:397
jk網站有哪些 瀏覽:134
學編程和3d哪個更好 瀏覽:932
win10移動硬碟文件無法打開 瀏覽:385
文件名是亂碼還刪不掉 瀏覽:643
蘋果鍵盤怎麼打開任務管理器 瀏覽:437
手機桌面文件名字大全 瀏覽:334
tplink默認無線密碼是多少 瀏覽:33
ipaddgm文件 瀏覽:99
lua語言編程用哪個平台 瀏覽:272
政采雲如何導出pdf投標文件 瀏覽:529
php獲取postjson數據 瀏覽:551
javatimetask 瀏覽:16
編程的話要什麼證件 瀏覽:94
錢脈通微信多開 瀏覽:878
中學生學編程哪個培訓機構好 瀏覽:852
榮耀路由TV設置文件共享錯誤 瀏覽:525

友情鏈接