내가 만든 새 파일의 이름을 즉시 변경하려면 어떻게 해야 합니까?

내가 만든 새 파일의 이름을 즉시 변경하려면 어떻게 해야 합니까?

다음 명령을 사용하면 solcjs --bin test.sol다음 이름의 파일이 생성됩니다 byonotary_sol_BYONotary.bin.

이 파일 이름을 변수에 즉시 저장하려면 어떻게 해야 합니까? solcjs --bin test.sol새로 생성된 파일 이름을 동일한 코드 줄의 변수에 실행하고 저장하고 싶습니다 .

감사해요.

답변1

파일 이름이 다음과 같기 때문에파일의 계약을 기반으로 생성됨, 원하는 "새" 파일이 무엇인지 쉽게 확인할 수 있도록 출력용 임시 디렉터리를 만드는 것이 좋습니다.

d=$(mktemp -d -p .)
solcjs --bin --output-dir "$d" test.sol && set -- "$d"/*.bin && newfile=$1

이는 현재( ) 디렉터리에 상대적인 디렉터리를 mktemp생성하라는 의미입니다. .그런 다음 이전과 같이 실행되지만 옵션이 solcjs있습니다 --output-dir. 같은 줄(또는 더 읽기 쉽게 별도의 줄)에서 *.bin새 디렉터리에 와일드카드를 확장하도록 쉘에 요청합니다. 아마도 일치하는 유일한 파일은 새로 생성된 파일일 것입니다. 물론, *.bin이 옵션 사용을 중단하는 경우에는 조정하세요.--bin

date +%s현재 타임스탬프(예 : ) 를 사용하거나 다음을 사용하는 등 다양한 방법으로 임시 디렉터리 이름을 조정할 수 있습니다.mktemp주형특징.

관련 정보