導航:首頁 > 版本升級 > powershell中排序文件

powershell中排序文件

發布時間:2023-03-26 06:23:21

『壹』 PowerShell 基本語法及常用命令

PowerShell常用命令:

一 Get類

1.Get-Command : 得到所有PowerShell命令,獲取有關 cmdlet 以及有關 Windows PowerShell 命令的其他元素的基本信息。 包括Cmdlet、Alias、Function。

2.Get-Process : 獲取所有進程
3.Get-Help : 顯示有關 Windows PowerShell 命令和概念的信息

4.Get-History : 獲取在當前會話中輸入的命令的列表

5.Get-Job : 獲取在當前會話中運行的 Windows PowerShell 後台作業

6.Get-FormatData : 獲取當前會話中的格式數據

7.Get-Event : 獲取事件隊列中的事件

8.Get-Alias : 獲取當前會話的別名

9.Get-Culture :獲取操作系統中設置的當前區域性

12.Get-Member : 獲取對象的屬性和方法。

13.Get-Random : 從集合中獲取隨機數或隨機選擇對象

14.Get-UICulture : 獲取操作系統中當前用戶界面 (UI) 區域性設置

15.Get-Unique : 從排序列表返回唯一項目

16.Get-Variable :獲取當前控制台中的變數

17.Get-EventLog : 獲取本地或遠程計算機上的事件日誌或事件日誌列表中的事件

18.Get-ChildItem : 獲取一個或多個指定位置中的項和子項

19.Get-Content : 獲取指定位置的項的內容

20.Get-ItemProperty :獲取指定項的屬性

21.Get-WmiObject : 獲取 Windows Management Instrumentation (WMI) 類的實例或可用類的相關信息

22.Get-Location :獲取當前工作位置的相關信息(如:F:\Users\TaoMin )

23.Get-PSDrive:獲取當前會話中的 Windows PowerShell 驅動器

24.Get-Item:獲取位於指定位置的項

25.Get-Process :獲取在本地計算機或遠程計算機上運行的進程

26.Get-Service : 獲取本地或遠程計算機上的服務

27.Get-Transaction :獲取當前(活動)事務

28.Get-ExecutionPolicy :獲取當前會話中的高洞執行策略

二.Set類 (set類命令一般都含有參數)

1.Set-Alias : 在當前 Windows PowerShell 會話中為 cmdlet 或其他命令元素創建或更改別名(替代名稱)

2.Set-PSDebug :打開和關閉腳本調試功能,設置跟蹤級別並切換 strict 模式

3.Set-StrictMode :建立和強制執行表達式、腳本和腳本塊中的編碼規則

4.Set-Date :將計算機上的系統時間更改為指定的時間

5.Set-Variable :設置變數的值,如果該變數還不存做高在,則創建該變數

6.Set-PSBreakpoint :在行、命令或者變數上設置斷點

7.Set-Location :將當前工作位置設置為指定的位置

8.Set-Item :將項的值更改為命令中指定的值

9.Set-Service :啟動、停止和掛起服務並更改服務的屬性

10.Set-Content :在項中寫入內容或用新內容替換其中的內容

11.Set-ItemProperty :創建或更改某一項的屬性值

12.Set-WmiInstance :創建或更新現有 Windows Management Instrumentation (WMI) 類的實例

13.Set-ExecutionPolicy :更改 Windows PowerShell 執行策略的用戶首選項。

三.Write類

1.Write-Host : 將自定義輸出內容寫戚胡枯入主機。類似於.net的 write()或者writeline()功能

2.Write-Progress :在 Windows PowerShell 命令窗口內顯示進度欄

3.Write-Debug :將調試消息寫入控制台

4.Write-Verbose:將文本寫入詳細消息流

5.Write-Warning :寫入警告消息

6.Write-Error : 將對象寫入錯誤流

7.Write-Output : 將指定對象發送到管道中的下一個命令;如果該命令是管道中的最後一個命令,則在控制台上顯示這些對象

8.Write-EventLog :將事件寫入事件日誌

PowerShell變數、常量、數組:

一、變數

PowerShell的變數無需預定義,可直接使用。當使用一個變數時,該變數被自動聲明。

變數以 $ 符號開頭。如: $a

PowerShell普通變數:

1.給變數賦值:

方式一:

$a = "This is a string"

$b = 123

$c = 0.125

方式二:

Set-Variable var 100

Set-Variable var1 」test「

Set-Variable va2 800

2.獲取變數值

get-variable var #獲取單個變數值

get-variable var* #獲取多個變數值

3.清空變數值

clear-variable var

4.刪除變數

remove-variable var

5.連接兩個字元串變數

$a = "This is the 1st string"

$b = "This is the 2nd string"

a + " and " + $b

$c

結果:This is the 1st string and This is the 2nd string

6.變數的方法

$date = Get-Date #獲取當前時間

$date.AddDays(3) #當前時間加三天

PowerShell特殊變數:

強制指定變數類型:

一般不需要為PowerShell的變數指定類型。但是也可以強制指定變數類型。

如:[int] $b = 5

常見變數類型如下:

二、常量

三、數組

PowerShell注釋用法:

PowerShell運算符用法:

運算符如下:

1.算術二元運算符:

2.賦值運算符

3.邏輯運算符

PowerShell函數用法:

用法一如下:(函數中改變變數值並不影響實際值)

執行結果:

用法二如下:(函數中變數值的改變要用$Script:var的形式)

執行結果:

PowerShell條件控制的用法:

一、循環類

1.foreach的用法

用法一如下:

執行結果:

用法二如下:直接獲取管道數據

執行結果:

2.while的用法

用法一如下:
n -le 5) #當 n
$n++
}

執行結果:

用法一如下:
n
n -ne 3) #當$n<>3時進行循環操作

執行結果:

用法一如下:
n
n -gt 3) #當$n>3時停止操作

執行結果:

二、分支類

1.if用法

if語法結構如下:

用法如下:

執行結果:

2.switch用法

switch語法結構如下:

用法一如下: switch(表達式)

執行結果:

用法二如下:switch -casesensitive (表達式)表示區分大小寫

執行結果: It's Monday

用法三如下:switch -regex(表達式)表示正則表達式匹配

執行結果:字母+數字,匹配為:day6

用法四如下:switch -regex(表達式)表示正則表達式匹配 表達式可為數組

執行結果:字母+數字,匹配為:day5

用法五如下:switch -wildcard (表達式)表示通配符匹配

執行結果:day2,匹配為:day2

三、跳轉類

1.break用法:break語句出現在foreach、for、while、switch等結構中時,break語句將使windows powershell立即退出整個循環。

用法如下:

執行結果:

2.continue用法:continue語句出現在foreach、for、while等循環結構中時,continue語句將使windows powershell立即退出某一次輪循環,並繼續下一輪循環。

用法如下:

執行結果:

PowerShell拋出異常的Throw用法:

用法如下:

返回結果:danger 及詳細錯誤信息

PowerShell獲取出錯信息的用法:

用法如下:
function one
{
get-process -ea stop #-ea定義錯誤發生以後該如何繼續執行,意同-ErrorAction
get-childitem ada -ErrorAction stop #此處有錯誤 路徑ada不存在
get-process -ErrorAction stop
}

返回結果:報出錯誤信息

PowerShell單步調試的用法:

用法如下:

執行結果:會出現逐步調試的對話框

本文轉自 https://www.cnblogs.com/feng-zi/p/9935874.html

『貳』 linux下如何批量移動某目錄下按日期排序的所有文件夾下部分文件

#!/bin/bash

forDIRin`ls你的原始目錄路徑`
do
mkdir-p/新目錄路徑/$DIR
mv原始目錄路徑上層目錄/$DIR/{01..05}/新目錄路徑/$DIR
done

『叄』 用批處理對文件的排序和windows的默認排序不一致,批處理的代碼是DIR *.*  /B >

藉助POWERSHELL可以在BAT中按數碰游字大小排序文件,如果文件名中有字母,則此方法不適用

set"SourDir=E:DCOPY	est"

for/f橋納"delims="%%ain('powershell-c"dir%SourDir%-Recurse|sort-object{[int]($_.basename.split('.')[0])}|foreach-object{$_.fullname}"'笑消銷)do(
echo%%a
)

『肆』 批處理文件前加序號,如何不改變原本文件排序

批量在文件名前面增加數字序號的方法:

第一步,下載好優速文件批量重命名工具後安裝使用。點擊「文件重命名」功能進入內頁後,再點擊【添加文件】按鈕,將需要加序號的文件批量導入到軟體中。

『伍』 bat批量把文件名添加到文本內容的每一行,按照文件名排序

這個放excel里處理都可以啊

『陸』 文件名前批量、隨機、添加序號(批處理.bat)

試試VBS 腳本,復制以下內容,新建記事本。粘貼後保存:
類型選所有,文件名:文件名前批量.vbs,編碼選擇:ANSI
dim fnew,newf,arr
Set fso = CreateObject("Scripting.FileSystemObject")
Set oFolder = fso.GetFolder(fso.GetFile(Wscript.ScriptFullName).ParentFolder.Path)
Set oFiles = oFolder.Files
ss= oFiles.count
For Each oFile In oFiles
if fso.GetExtensionName(oFile.Path) <> "mp3" then ss=ss - 1
next
arr = split(RndNub(ss),",")
newf = 0
For Each oFile In oFiles
if fso.GetExtensionName(oFile.Path) ="mp3" then
i = arr(newf)
oFile.name = left("0000", 4-len(i)) & i & "_" & oFile.name
newf = newf + 1
end if
next

msgbox "Done!",64,"TXT"

Function RndNub(ReqNub)
dim rds
Randomize
Set myList=CreateObject("System.Collections.ArrayList")
for i = 0 to 9999
myList.add(i)
next

for i=0 to ReqNub-1
index = Int((10000-i) * Rnd)
rds =rds & mylist.Item(index) & ","
myList.RemoveAt(index)
next
RndNub = rds
End Function

『柒』 Powershell企業應用 - 第05章 編寫Powershell日誌系統

我們在進行企業腳本執行的過程中,對於執行的輸出,往往需要將其記錄下來用作參考或者留存記錄作為合規的憑據。

文本日誌文件,CSV文件以及Windows日誌是我們可以用來留存記錄的數據源。

文本日誌文件一般是.txt 或者 .log 擴展名的文本文件,我們讓腳本在執行的過程中向里寫入輸出信息。

通過以下命令創建文本日誌文件

使用Powershell寫入信息到文本日誌文件
在腳本中,我們可以使用Add-Content命令向日誌文件中輸出腳本執行的信息。

CSV日誌文件本質也是文本文件,但可以在Excel中打開,更加方便進行篩選和排序。

通過以下命令創建CSV日誌文件

向CSV日誌文件寫入信息

對於CSV文件,我們需要先寫入文件每列的表頭信息,用逗號進行分隔段蠢。
表頭信息範例: username, time, action
這樣我們就定義了CSV文件的三個表頭。
然後寫入的日誌信息應與表頭相對應,也用逗號進行分割。
日誌信息範例: Leo Zhang, 20211116 12:00:00 , Reboot Computer
CSV文件可以使用Microsoft Excel打開,對其中的數據可以像操作握罩陪xls文件一樣,進行排序和篩選等操作。

在腳本中,我們仍然使用Add-Content命令向CSV日誌文件中輸出腳本執行的信息。

使用Powershell寫入信息到文本日誌文件

我們可以在腳本中,將日誌輸出寫入到悶滲Windows日誌中,通過Windows事件管理器進行查看,可以進行更加細致顆粒度的查找和過濾。如果結合ManageEngine的EventsLog Analyzer這樣的工具,可以收集所有伺服器的日誌進行統一管理和歸檔,幫助我們更好的管理日誌以及滿足合規性的要求。

創建Windows日誌
我們可以使用New-Eventlog來創建Windows日誌的日誌本,專門用來存儲來自我們腳本的日誌信息。

New-Eventlog命令的參數:
-Logname: Windows日誌的名稱。
-Source: 日誌的來源

閱讀全文

與powershell中排序文件相關的資料

熱點內容
t8cad文件怎麼打開 瀏覽:275
英語趣配音網路未連接 瀏覽:740
linuxdeb文件安裝 瀏覽:153
word如何在箭頭上寫字 瀏覽:821
安全刪除數據為什麼要重寫硬碟 瀏覽:873
稅務系統網路與信息安全應急保障工作框架 瀏覽:407
淘寶背景代碼生成 瀏覽:649
小學特色託管編程圖形如何 瀏覽:748
編程實驗分析怎麼寫 瀏覽:58
滑鼠編程宏怎麼設置 瀏覽:100
怎麼清除百度登錄過網站 瀏覽:503
linuxl2 瀏覽:116
蘋果升級一直重啟怎麼解決 瀏覽:827
農商銀行app怎麼登錄不上去 瀏覽:47
查看已連接寬頻密碼 瀏覽:822
日本創建購物網站需要什麼 瀏覽:723
數據拐點什麼時候出來 瀏覽:640
怎麼做到徹底理解編程語言 瀏覽:167
機器人和程序編程哪個好 瀏覽:563
怎麼改蘋果手機icloud賬號和密碼 瀏覽:526

友情鏈接