文件資源管理器(WIN+E快捷鍵打開的窗格)就這樣的,然後我們就會進某個磁碟找對應的文件或文件夾下的文件,進行一定的操作 但是有註意過嗎 ,這些窗格“展示列”(先這樣稱呼吧,官方的名稱應該是:可用的列,例如:,官網地址:如何更改在 Windows 資源管理器中的列設置 - Microsoft 支持) ...
[20231201]亂序輸出.txt
--//測試需要生成seq -f "%06g" 300000的亂序輸出,當時不知道bash shell如何實現,先通過oracle的sql語句建立亂序數字輸出。
set pagesize 0
spool aa.txt
select lpad(level,6,'0') from dual connect by level <=3e5 order by dbms_random.value;
spool off
--//註意設置set pagesize 0,不然中間出現多次頁頭。註意保持aa.txt的備份,測試要重覆多次。
--//有時間看了一些bash shell文檔.
$ seq -f "%06g" 5 | xargs -IQ echo Q $RANDOM
000001 395
000002 395
000003 395
000004 395
000005 395
--//這樣不行.找到一個鏈接https://www.cnblogs.com/cnhack/articles/17164650.html
--//使用awk,測試看看.
$ seq -f "%06g" 5 | awk '{print $1,rand()*1000000}' | sort -k2
000003 306394
000004 578941
000002 593909
000005 740133
000001 924046
$ seq -f "%06g" 5 | awk '{print $1,rand()*1000000}' | sort -k2
000003 306394
000004 578941
000002 593909
000005 740133
000001 924046
--//視乎awk的rand()偽隨機,2次執行的結果一樣的.加入srand()看看.
$ seq -f "%06g" 5 | awk 'BEGIN{srand()} {print $1,rand()*1000000}' | sort -k2
000002 614333
000003 75798.2
000001 763180
000005 791454
000004 826102
--//重覆兩次結果不一樣.
$ seq -f "%06g" 5 | awk 'BEGIN{srand()} {print $1,rand()*1000000}' | sort -k2|awk '{print $1}'
000005
000001
000002
000004
000003
--//基本滿足要求.不知道生成是否緩慢,因為如果執行seq -f "%06g" 300000,要調用rand() 3e5次呢?上班測試看看.
$ time seq -f "%06g" 300000 | awk 'BEGIN{srand()} {print $1,rand()*1000000}' | sort -k2|awk '{print $1}' > bb.txt
real 0m1.858s
user 0m2.081s
sys 0m0.055s
$ head bb.txt ;tail bb.txt
245798
253547
034048
204117
136765
206247
231163
134263
214472
152697
104588
167604
023122
013733
161220
155133
284947
259982
057430
096936
--//OK,滿足需求。