簡體   English   中英

使用 bash 腳本和 awk 作為命令

[英]Using bash script with awk as command

我是從這里學習awk

在那里它給出:

列.sh

#!/bin/sh
column="$1"
awk '{print '"$column"'}'

但是隨后執行以下操作給了我錯誤:

$ ls -l | column 3 
column: 3: No such file or directory

如何使用 column.sh 作為命令?

問題:如何使用 column.sh 作為命令?


使用column .sh作為命令。 顯然, column不是column.sh

所以你可以:

/the/directory/with/the/script/column.sh 3
# or
cd /the/directory/with/the/script
./column.sh 3

或者,您可以將腳本的路徑添加到PATH環境變量中。 或者您可以將腳本添加到PATH已經存在的PATH

export PATH="$PATH:/the/directory/with/the/script"
column.sh 3

用戶腳本通常安裝在$HOME/bin或者,您可以遵循 xdg-user-dirs 規范的擴展名,使用$HOME/.local/bin目錄或用於/usr/local/bin所有用戶。


注意:您的腳本更新應為:

#!/usr/bin/env bash
[[ "$1" =~ [^0-9] ]] || exit 1
awk -v c="$1" '{print $c}'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM