#!/bin/bash
echo 'HELLO'
dmidecode -t system > sys.txt
当我执行 ls 时,它显示 sys.txt?文件而不是 sys.txt。我是 linux 脚本的新手,请帮忙
最佳答案
sys.txt 之后的脚本中有一些不可打印的字符。如果您在 Windows 上创建此文件,则很可能是 \r。在这种情况下 - 尝试使用 dos2unix 转换它。
如果您发现了其他一些不可打印的字符 - 一些称为这些 gremlins - 尝试使用 tr 进行转换。
tr -d '[\000-\010\014\016-\037\177]' < dirty.sh > clean.sh
关于linux - 尝试使用几个简单的 dmidecode 命令运行 shell 脚本,在执行脚本时它会在每个文件的末尾添加 '?',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8280809/