溫馨提示×

shell字符串轉數組空格問題怎么解決

小億
229
2023-04-25 15:44:41
欄目: 編程語言

在Shell中,可以使用`IFS`(Internal Field Separator)環境變量來設置分隔符,從而將字符串轉換為數組。默認情況下,`IFS`的值是空格、制表符和換行符。

當字符串中包含空格時,可以通過將`IFS`設置為只包含換行符的值來解決該問題。例如:

#!/bin/bash

str="apple banana orange"

IFS=$'\n' arr=($str)


echo "${arr[0]}"

echo "${arr[1]}"

echo "${arr[2]}"

上面的示例代碼將`IFS`設置為只包含換行符的值,然后使用空格分隔符將字符串`str`轉換為數組`arr`。這樣,即使字符串中包含空格,也可以正確地將其轉換為數組。

輸出結果為:

apple

banana

orange

注意,當`IFS`被修改時,需要在轉換完成后將其恢復為默認值,避免對后續代碼的影響??梢允褂靡韵麓a將`IFS`恢復為默認值:

IFS=$' \t\n'

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女