Linux的scan命令,linux的scan命令

linux下scan命令主要是以scanf的形式使用轉換符解析字符串,下面由秋天網 Qiutian.ZqNF.Com小編為大家整理了linux下scan命令的相關知識,希望對大家有幫助!

linux的scan命令詳解

scan - 以sscanf的形式使用轉換符解析字符串

語法:

scan string format ?varname varname ...?

介紹:

scan命令根據format的格式解析string并給varname賦值,返回成功轉換的次數。如果沒有提供varname,將以列表形式返回scan匹配值

scan命令和format命令類似.支持的轉換字符如下:

d

輸入必須為一個十進制整數。其被讀入并以十進制字符串方式存入變量。如果提供l或者l此類修改器字符,則掃描的值將以64-bit形式表示

o

輸入必須為一個八進制整數。其被讀入并以十進制字符串方式存入變量。如果提供l或者l此類修改器字符,則掃描的值將以64-bit形式表示。如果其值超過max_int(當沒有l或者l時,32-bit平臺為017777777777),將被截斷成一個有符號整形數。因此,037777777777 在32-bit機器上默認將被表示為-1

x

輸入必須為一個十六進制整形數。其被讀入并以十進制字符串方式存入變量。如果提供l或者l此類修改器字符,則掃描的值將以64-bit形式表示。如果其值超過max_int(當沒有l或者l時,32-bit平臺為017777777777),將被截斷成一個有符號整形數。因此,037777777777 在32-bit機器上默認將被表示為-1

u

輸入必須為一個十進制整形數。其被讀入并以無符號十進制字符串方式存入變量。如果提供l或者l此類修改器字符,則掃描的值將以64-bit形式表示。

i

輸入必須為一個整形數。進制取決于如expr描述的方式。其被讀入并以無符號十進制字符串方式存入變量。如果提供l或者l此類修改器字符,則掃描的值將以64-bit形式表示。

c

輸入為單字符其二進制值以十進制字符串形式保存在變量中。初始的空格在這種情況下不會被跳過,所以輸入可以使空格。這個轉換不同于ansi標準(輸入永遠由單字符組成并且沒有指定域寬度)

s

輸入由直到下一個空白符的所有字符組成;字符會復制給變量

e f g

輸入必須為由可選的符號,十進制字符串以及小數點組成的浮點數,可選的指數由e或者e后跟可選符號以及十進制字符串。其被讀入并以浮點型字符串方式存入變量。

[chars]

輸入由任意數目的字符組成。匹配的字符串存在變量中。用于匹配一組某一范圍的字符,用-表示范圍,如果-出現在最先或者最后被當做一個字符

[^chars]

輸入由任意數目的字符組成。匹配的字符串存在變量中。用于匹配一組某一范圍的字符以外的部分,用-表示范圍,如果-出現在最先或者最后被當做一個字符

n

不輸入任何字符。掃描字符的總數取自最近掃描后所存儲的變量

linux的scan命令實例

將一個簡單的顏色代碼(#rrggbb方式)解析為不同域的值

set string "#08d03f"

scan $string "#%2x%2x%2x" r g b

解析hh:mm時間字符串,注意避免通過強制轉換十進制而帶來的八進制數問題

set string "08:08" ;# *not* octal!

if {[scan $string "%d:%d" hours minutes] != 2} {

error "not a valid time string"

}

# we have to understand numeric ranges ourselves...

if {$minutes < 0 || $minutes > 59} {

error "invalid number of minutes"

}

將一個字符串分解成非空格字符的一系列集合(注意使用%n轉換使得能夠跳過第一個空格的字符)

set string " a string {with braced words} + leading space "

set words {}

while {[scan $string %s%n word length] == 2} {

lappend words $word

set string [string range $string $length end]

}

解析一個簡單的坐標字符串,通過查找顯式終止字符檢查是否完成

set string "(5.2,-4e-2)"

# note that the spaces before the literal parts of

# the scan pattern are significant, and that ")" is

# the unicode character \u0029

if {

[scan $string "(%f,%s %c" x y last] != 3

|| $last != 0x0029

} then {

error "invalid coordinate string"

}

puts "x=$x, y=$y"

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/282855.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/282855.shtml
英文地址,請注明出處:http://en.pswp.cn/news/282855.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Spring Cloud Gateway 原生支持接口限流該怎么玩

關于pig&#xff1a; 基于Spring Cloud、oAuth2.0開發基于Vue前后分離的開發平臺&#xff0c;支持賬號、短信、SSO等多種登錄&#xff0c;提供配套視頻開發教程。 關于 Spring Cloud Gateway SpringCloudGateway是Spring官方基于Spring 5.0&#xff0c;Spring Boot 2.0和Projec…

我的手機 不支持箭頭函數

不支持&#xff0c;要換成function的形式 轉載于:https://www.cnblogs.com/web-fusheng/p/7295901.html

中標麒麟linux卸載qt,國產化 銀河麒麟編譯Qt程序的問題匯總 | 阿拉燈

Run in terminal莫名奇妙軟件無法在QtCreator中運行或者調試&#xff0c;main函數都無法進入&#xff0c;QtCreator中一運行就崩潰&#xff0c;并跳到匯編界面&#xff0c;這多半和代碼沒什么關系&#xff0c;我這里是將項目->運行中的“Run in terminal”去掉勾選&#xff…

css3-13 如何改變文本框的輪廓顏色

css3-13 如何改變文本框的輪廓顏色 一、總結 一句話總結&#xff1a;outline使用和border很像&#xff0c;幾乎一模一樣&#xff0c;多了一個offset屬性 1、輪廓outline如何使用&#xff1f; 使用和border很像&#xff0c;幾乎一模一樣&#xff0c;多了一個offset屬性 18 …

ios添加設備真機測試,以及Undefined symbols for architecture x86_64:''錯誤

問題今天坑了好久&#xff0c;然后找了各種資料 添加設備這個直接去開發者中心添加一個設備進去就好&#xff0c;具體流程百度&#xff0c;第二個問題是屬于路徑不對或者是靜態庫沒有添加成功&#xff0c;項目可以看到&#xff0c;到時路徑找不到&#xff0c;你把靜態庫拖到桌面…

linux NF NR實例,awk內建變量示例詳解之NR、FNR、NF

NR表示從awk開始執行后&#xff0c;按照記錄分隔符讀取的數據次數&#xff0c;默認的記錄分隔符為換行符&#xff0c;因此默認的就是讀取的數據行數&#xff0c;NR可以理解為Number of Record的縮寫。在awk處理多個輸入文件的時候&#xff0c;在處理完第一個文件后&#xff0c;…

迷宮探索

/* 5 4 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 1 1 4 3 */#include<iostream>using namespace std;struct node {int x;//橫坐標int y;//縱坐標int f;//父親在隊列中的編號int s;//步數 };int main() {node que[2051];int a[51][51]{0};int book[51][51]{0};//定義一…

Kinect2.0獲取數據

最近事情真是多&#xff0c;今天抽空研究一下Kinec2.0的數據獲取&#xff01; 系統要求 https://developer.microsoft.com/en-us/windows/kinect/hardware-setup 系統環境 聯想Y430P&#xff0c;Windows10 首先安裝了Kinect for Windows SDK &#xff08;KinectSDK-v2.0_1409-S…

linux超級工具,linux運維超級工具--sysdig

sysdig 是一個超級系統工具,它可以用來捕獲系統狀態信息&#xff0c;在運維工作中sysdig能很方便的排查異常、定位故障&#xff0c;它還能保存數據進行分析&#xff0c;并且提供強大的命令接口。在了解sysdig強大之處之前,首先得安裝sysdig&#xff0c;我這里是環境是centos6.7…

《sql語句練習1》

Oracle系列《一》&#xff1a;簡單SQL與單行函數 使用scott/tiger用戶下的emp表和dept表完成下列練習&#xff0c;表的結構說明如下 emp員工表(empno員工號/ename員工姓名/job工作/mgr上級編號/hiredate受雇日期/sal薪金/comm傭金/deptno部門編號) dept部門表(deptno部門編號…

Asp.net mvc 知多少(一)

本系列主要翻譯自《ASP.NET MVC Interview Questions and Answers 》- By Shailendra Chauhan&#xff0c;想看英文原版的可訪問http://www.dotnettricks.com/free-ebooks自行下載。該書主要分為兩部分&#xff0c;ASP.NET MVC 5、ASP.NET WEB API2。本書最大的特點是以面試問答…

stm32h7能跑linux,STM32H7榨干了Cortex-M7的最后一滴血

原標題&#xff1a;STM32H7榨干了Cortex-M7的最后一滴血有個非常重磅的消息ST給自己的STM32家族又新增了一條新的產品線—— H7H 代表的是High Pefrmance之意 (此為筆者臆測)7 則表示這是基于ARM Cortex-M7架構修改而來熟悉的工程師可能會問&#xff0c;不是已經有基于M7架構的…

通過PowerShell進行網絡分析

好久沒有寫文章&#xff0c;因為確實工作也比較忙。今天周末&#xff0c;稍微有些時間&#xff0c;在解決一個問題時&#xff0c;用到了一點抓取和處理網絡數據的小技巧&#xff0c;摘錄分享如下。問題描述我有一個需求&#xff0c;就是要研究某個網頁加載過程中具體發起了多少…

jvm監控調優常用命令

jvm監控調優常用命令 轉載于:https://www.cnblogs.com/likun10579/p/6403324.html

【BZOJ】1013 球形空間產生器

【解析】代數變形高斯消元 [分析] 依據題目以下的提示。設x[i][j]表示第i個點在第j維的坐標。r[j]為圓心在第j維的坐標 能夠知道&#xff1a; dis根號(∑(x[i][j]-r[j])^2)。 因為平方的非負性。所以能夠推出 dis^2∑(x[i][j]-r[j])^2。 依據平方和公式&#xff0c;(x[i][j]-r[…

c語言不規則窗口,C語言不規則數組和指針

不規則數組是每一行的列數不一樣的二維數組&#xff0c;其原理如下圖所示&#xff0c;圖中的數組有3行&#xff0c;每行有不同的列數。在了解如何創建不規則數組之前&#xff0c;讓我們先看一下用復合字面量創建的二維數組。復合字面量是一種C構造&#xff0c;前面看起來像類型…

php spl_autoload_register() 函數

spl_autoload_register()的用法&#xff1a; 其中$this表示當前類&#xff0c;autoload()是我注冊的自動加載函數&#xff0c;當然這個只是一個函數名&#xff0c;只要不與php的關鍵字重復&#xff0c;符合一般函數名的命名規范即可。 使用自動加載之后&#xff0c;當我們在一個…

C語言中遞歸什么時候能夠省略return引發的思考:通過內聯匯編解讀C語言函數return的本質...

C語言中遞歸什么時候能夠省略return引發的思考&#xff1a;通過內聯匯編解讀C語言函數return的本質 事情的經過是這種&#xff0c;博主在用C寫一個簡單的業務時使用遞歸&#xff0c;因為粗心而忘了寫return。結果發現返回的結果依舊是正確的。經過半小時的反匯編調試。證明了我…

C# 為什么說CM+Fody+HC是WPF開發的最強組合?

01—名詞解析CM&#xff1a;Caliburn.Micro(簡稱CM)一經推出便備受推崇&#xff0c;作為一款MVVM開發模式的經典框架&#xff0c;越來越多的受到wpf開發者的青睞.我們看一下官方的描述&#xff1a;Caliburn是一個為Xaml平臺設計的小型但功能強大的框架。Micro實現了各種UI模式&…

c語言邏輯運算符兩側運算對象,邏輯運算符兩側運算對象的數據類型是什么?...

邏輯運算符兩側運算對象的數據類型&#xff1a;可以是任何合法的類型數據&#xff1b;因為邏輯運算符兩邊的運算對象&#xff0c;最終都被轉換成bool值(邏輯值)操作。0、null轉換為false&#xff0c;而所有非零、非false、非null值轉換為true&#xff1b;然后進行運算。邏輯運算…