如何解决tr -d 或 sed -e 's/\r//g' 无法从 MINGW32 中的文件中删除 CRLF
-----BEGIN CERTIFICATE REQUEST-----
MIIFIDCCAwgCAQAwIDEeMBwGA1UEAwwVdmF1bHQudmF1bHQtcGVyc28uc3ZjMIIC
IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA2h1Io+IPgBFYa+L9TFQ3hXDk
dKJFHVBHFx6RaYMDHJe75c/Ozq3zwAwlDlPviTvB96OyuBX9KIBDk5b0QCELYHym
omCSm1GO+Izxgu26aBvrbgycwUml+lXqW8R6reMpEBnaIRgOvPhIsncaR3iQBt8m
yPo/v5ouPCrVGJ5Hehi4ll0vwxI5/ETlJIjnDqBODwWRLvktv4ysHRj/4hyh5Yn0
IalOn9Cxo0w2zVQhFE63n3enz7c=
-----END CERTIFICATE REQUEST-----
像这样也试过 tr -d "\n" 和 tr -d "\r" :
cat <<EOF >${TMPDIR}/csr.yaml
apiVersion: certificates.k8s.io/v1beta1
kind: CertificateSigningRequest
Metadata:
name: ${CSR_NAME}
spec:
groups:
— system:authenticated
request: $(cat ${TMPDIR}/server.csr | base64 | sed -e 's/\r//g')
usages:
— digital signature
— key encipherment
— server auth
EOF
不管我做什么 最终结果文件 CERTIFICATE 内容的一部分仍然包含换行符 我怎样才能删除它?
解决方法
试试:
cat -v file.csr | tr "^M" "\n" | tr -d "\n"
这将输出带有 Windows 文件结尾 (-v) 的文件,然后使用 tr 将文件结尾 (^M) 替换为新行,然后删除新行 (-d)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。