我试图通过adb shell找到最后修改过的文件。问题是adb shell中没有像less,head,tail,awk,cut这样的命令。
有没有办法只使用ls和grep找到最后修改过的文件?文件名按排序顺序执行,并且ls -l最后显示最后修改的文件。
答案 0 :(得分:1)
您可以使用shell(数组)中的内置功能来实现此目的:
IFS=$'\n' # Using only newline as delimiter (ignore tabs and spaces)
output=(`ls -l`) # Save output as array (each position is one line)
lines=${#output[@]} # Calculate the number of lines
echo ${output[$((lines-1))]} # Print the last line from output
如果你只想要文件名,你可能会有点棘手:
IFS=$'\n'
output=(`ls -l`)
lines=${#output[@]}
IFS=$' '
file_line=(${output[$((lines-1))]})
file_name=()
index=0
for part in ${file_line[@]}; do
if [[ $index -gt 4 ]]; then file_name+=($part); fi
index=$((index+1))
done
echo ${file_name[@]}
我希望这些会有所帮助。