명령줄을 통해 실행되는 몇 가지 bash 명령이 있습니다.
Sample Bash Command: ksh Script.ksh Filename filepath userid host password
명령줄에서 비밀번호를 전달해야 하지만 실행 시 비밀번호가 표시됩니다. bash 명령을 수정하고 "password as ****"를 표시하는 방법이 있습니까?
Sample: ksh Script.ksh Employee.txt /home/opt/ empuser 10.20.30.99 abc@123
위의 bash 명령을 다음과 같이 수정할 수 있습니다.
Sample: ksh Script.ksh Employee.txt /home/opt/ empuser 10.20.30.99 ********
스크립트 내부의 값을 읽으시겠습니까?
Script Content:
var1 = $1
var2 = $2
var3 = $3
varpassword = $4
..... reading password and running sftp command
답변1
명령을 입력하면 입력한 내용이 화면에 그대로 유지됩니다. tput
를 사용하여 위 줄을 제거해 볼 수 있습니다 .
#!/bin/bash
sleep 5
tput cuu 1
echo "Running: $0 $1 $2 $3 ********* "
sleep 5
터미널이 충분히 넓고 프롬프트가 충분히 짧다면 이 방법이 효과가 있을 수 있습니다.
아니면 그냥 화면을 지우세요 clear
.
그러나 비밀번호는 여전히 에 표시됩니다 ps -ef
. 명령줄에서 암호를 설정하는 것은 일반적으로 좋지 않은 생각이며, 특히 장기 실행 프로그램의 경우 더욱 그렇습니다. 예를 들어, ssh
비밀을 숨기는 방법을 알고 싶을 수도 있습니다 .