假设我有一个 PowershellFormat-Table
字符串,例如:
ls | Format-Table Name, @{expression={$_.Length / 1024}; label='KB'}
我对从中获得的输出感到满意,但我不想每次使用它时都输入它。我希望能够用一个简单的单词命令来调用它,例如:
ls | Format-KiloBytes
我认为我应该为此定义一个函数,因为别名无法指定参数。但是,如果我定义类似:
function kilobytes {format-table Name, @{expression={$_.Length / 1024}; label='KB'}}
那么它没有任何效果:
PS> ls | format-table Name, @{expression={$_.Length / 1024}; label='KB'}
... Produces the formatted output
PS> ls | kilobytes
... Produces output with unchanged formatting, the same as 'ls'
编辑:看来我很困惑。在试验时,我已经创建了一个别名kilobytes
为Format-Table
. 我忘记了这一点,但这意味着创建函数kilobytes
成功而没有任何警告,但随后调用kilobytes
的不是调用新创建的函数而是调用现有别名。