[英]bash wont assign variables
我無法讓我的bash腳本在循環中分配變量:
#!/bin/bash
usercount=0
for word in userfile
do
let usercount=$usercount+1
done
echo $usercount
usercount的輸出始終為0.這有什么問題?
你需要while loop
來line by line
讀取文件:
usercount=0
while read l; do
let usercount=$usercount+1;
done < userfile
雖然只是計算線,你可以很好地做:
usercount=$(wc -l < userfile)
如果要計算文件中的行或單詞,請使用wc
:
話:
wc -w < file
行:
wc -l < file
大多數人通常使用雙括號進行shell算術:
usercount=0
for word in userfile groupfile elephants
do
((usercount++))
done
echo $usercount
該片段回應3
,對應於三個單詞。 你也可以使用let
; 大多數人沒有。 但是,當我運行你的代碼時,它回應1
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.