您可以使用
s/([A-Z])/-L1/g查找大写字母并将其替换为破折号,然后将其转换为小写字母。但是,这在行的开头给您一个破折号,因此您需要另一个sed表达式来处理它。
这应该工作:
sed --expression 's/([A-Z])/-L1/g' --expression 's/^-//' <<< "MyDirectoryFileLine"

您可以使用
s/([A-Z])/-L1/g查找大写字母并将其替换为破折号,然后将其转换为小写字母。但是,这在行的开头给您一个破折号,因此您需要另一个sed表达式来处理它。
这应该工作:
sed --expression 's/([A-Z])/-L1/g' --expression 's/^-//' <<< "MyDirectoryFileLine"