프롬프트에 활동 한계 시간 표시
8278 단어 ShellScriptTerminalfish
실시간 타이머도 아니기 때문에 현재 시간을 표시하는 계의 변종입니다.
시간 계산 힘들었다-비망록.
완제품
eva.fishfunction eva
set now (date +%s)
set limit (date -d '18:00' +%s)
set remaining (expr $limit - $now)
set sec (expr $remaining \% 60)
set min (expr \( $remaining \% 3600 \) / 60)
set hrs (expr $remaining / 3600)
printf "%d:%02d:%02d" $hrs $min $sec
end
프롬프트 표시는 단순히 함수를 echo하면 됩니다.
fish_right_prompt.fishfunction fish_right_prompt
if [ $status -eq 0 ]
set_color magenta
echo "(゚ー゚*) "
else
set_color blue
echo "(=ω=.) "
end
if not set -q __fish_prompt_regalias
# グローバルにしないと毎回変わるよ
set -g __fish_prompt_regalias (regalias)
end
echo (eva |golor)" "
set_color cyan
echo "$__fish_prompt_regalias"
#set_color yellow
#echo -n $USER
#set_color normal
#echo -n '@'
#set_color red
#hostname
end
편집 번거롭기 때문에 지금 사용하고 있는 것을 붙였습니다만,echo (eva)
에 OK
함수명이 eva인 것은
에반게리온풍 카운트다운 – edius…?
정시 이후 일하고 싶지 않다는 것으로
움직임이 멈추는 이미지 + 콜론으로 구분 된 카운트 다운 표시 = EVA
이었다.
S2 기관도 없습니다.
츠마즈키
오늘 18시 요구되지 않는 문제
검색에서date -d '10 day'
등 단어로 포맷을 지정하는 것만이 걸렸기 때문에 유추로부터 date
의 유연성에 베팅해date -d '18:00'
에서 잡혔다. 이것으로 「오늘의」가 전제가 되는 것은 살아난다.
시간 뺄셈
ShellScript 날짜 조작의 가난함에 울었습니다 ...
쉘 스크립트로 시간 계산을 한 사람 앞에 해소 - Qiita
쉘 스크립트가 존경받는 이유 중 하나. 그것은 시간 계산 기능이 약한 곳이다.
감기에 걸린, 쉘 스크립트로 시간차 찾기 - Days of Speed(2013-01-07)
이것으로 +%s
로 UNIX 시간으로 변환할 수 있어 단순한 뺄셈으로 차초를 도출할 수 있는 것을 알았다.
set now (date +%s)
set limit (date -d '18:00' +%s)
set remaining (expr $limit - $now)
초 수의 H:i:s화
차이의 초는 UNIX 시간과는 관계가 없으므로, 이것을 UNIX 시간으로 변환하면 1970년에 타임 슬립 해 버린다.
그렇지만 시간은 시간이므로 간단하게 변환해 준다고 생각했는데, 자작해야 하는 것처럼…
몇 가지 있었지만 이것을 채택했다.
bash 수식에서 초 수를 HH:MM:SS 형식으로 변환 - Qiita
i=6789
((sec=i%60, min=(i%3600)/60, hrs=i/3600))
timestamp=$(printf "%d:%02d:%02d" $hrs $min $sec)
echo $timestamp
set sec (expr $remaining \% 60)
set min (expr \( $remaining \% 3600 \) / 60)
set hrs (expr $remaining / 3600)
printf "%d:%02d:%02d" $hrs $min $sec
이스케이프 문제
expr
의 식이 통과하지 않아서 망설였다.
fish?
이미 코드에서 볼 수 있듯이 %
를 이스케이프해야합니다.
expr
또한, ()
역시 이스케이프해야 하며, 더 앞뒤로 공백을 붙여야 한다.
expr은 평상시 사용하지 않기 때문에, 집어 들었다.
expr 대체 찾기 문제
expr
사용법 찾기
쉘에서 변수의 증가에 expr을 사용하면 100 배 느린 건 - Qiita
를 찾아서, 그럼 ((...))
Bash $((산술식)) 모두 - A 기본편 - Qiita
대안을 찾는 것도 찾을 수 없습니다 ...
fish에서 bash let을 호출하여 조금 계산 - Qiita
fish에서는, 계산은 기본적으로 math
커멘드에 해 받게 되어 있습니다.
math:bc를 소환하여 강력한 수치 계산! expr은 필요 없다.
커맨드 라인상에서 계산하는 방법 정리 【UNIX】【Windows】 | 바샤로그.
최근에 하고 있는 fish 에는, math
라고 하는 커멘드가 준비되어 있습니다.math
를 사용하면, expr
보다 고도의 계산을 할 수 있습니다.
내가하고 싶은 것은 고급 계산이 아닌 단순한 사칙 연산의 낮은 계산 때문입니다.
그 경우, 주로 속도면에서 math
를 채용하는 이점을 기사 단위로 찾아낼 수 없었기 때문에 expr
그대로 둡니다.
이 길도 좀처럼 시간을 썼다.
Reference
이 문제에 관하여(프롬프트에 활동 한계 시간 표시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/khsk/items/87e5b5cbb0cb2f5ed230
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
function eva
set now (date +%s)
set limit (date -d '18:00' +%s)
set remaining (expr $limit - $now)
set sec (expr $remaining \% 60)
set min (expr \( $remaining \% 3600 \) / 60)
set hrs (expr $remaining / 3600)
printf "%d:%02d:%02d" $hrs $min $sec
end
function fish_right_prompt
if [ $status -eq 0 ]
set_color magenta
echo "(゚ー゚*) "
else
set_color blue
echo "(=ω=.) "
end
if not set -q __fish_prompt_regalias
# グローバルにしないと毎回変わるよ
set -g __fish_prompt_regalias (regalias)
end
echo (eva |golor)" "
set_color cyan
echo "$__fish_prompt_regalias"
#set_color yellow
#echo -n $USER
#set_color normal
#echo -n '@'
#set_color red
#hostname
end
오늘 18시 요구되지 않는 문제
검색에서
date -d '10 day'
등 단어로 포맷을 지정하는 것만이 걸렸기 때문에 유추로부터 date
의 유연성에 베팅해date -d '18:00'
에서 잡혔다. 이것으로 「오늘의」가 전제가 되는 것은 살아난다.시간 뺄셈
ShellScript 날짜 조작의 가난함에 울었습니다 ...
쉘 스크립트로 시간 계산을 한 사람 앞에 해소 - Qiita
쉘 스크립트가 존경받는 이유 중 하나. 그것은 시간 계산 기능이 약한 곳이다.
감기에 걸린, 쉘 스크립트로 시간차 찾기 - Days of Speed(2013-01-07)
이것으로
+%s
로 UNIX 시간으로 변환할 수 있어 단순한 뺄셈으로 차초를 도출할 수 있는 것을 알았다. set now (date +%s)
set limit (date -d '18:00' +%s)
set remaining (expr $limit - $now)
초 수의 H:i:s화
차이의 초는 UNIX 시간과는 관계가 없으므로, 이것을 UNIX 시간으로 변환하면 1970년에 타임 슬립 해 버린다.
그렇지만 시간은 시간이므로 간단하게 변환해 준다고 생각했는데, 자작해야 하는 것처럼…
몇 가지 있었지만 이것을 채택했다.
bash 수식에서 초 수를 HH:MM:SS 형식으로 변환 - Qiita
i=6789
((sec=i%60, min=(i%3600)/60, hrs=i/3600))
timestamp=$(printf "%d:%02d:%02d" $hrs $min $sec)
echo $timestamp
set sec (expr $remaining \% 60)
set min (expr \( $remaining \% 3600 \) / 60)
set hrs (expr $remaining / 3600)
printf "%d:%02d:%02d" $hrs $min $sec
이스케이프 문제
expr
의 식이 통과하지 않아서 망설였다.fish?
이미 코드에서 볼 수 있듯이
%
를 이스케이프해야합니다.expr
또한,
()
역시 이스케이프해야 하며, 더 앞뒤로 공백을 붙여야 한다.expr은 평상시 사용하지 않기 때문에, 집어 들었다.
expr 대체 찾기 문제
expr
사용법 찾기쉘에서 변수의 증가에 expr을 사용하면 100 배 느린 건 - Qiita
를 찾아서, 그럼
((...))
Bash $((산술식)) 모두 - A 기본편 - Qiita
대안을 찾는 것도 찾을 수 없습니다 ...
fish에서 bash let을 호출하여 조금 계산 - Qiita
fish에서는, 계산은 기본적으로
math
커멘드에 해 받게 되어 있습니다.math:bc를 소환하여 강력한 수치 계산! expr은 필요 없다.
커맨드 라인상에서 계산하는 방법 정리 【UNIX】【Windows】 | 바샤로그.
최근에 하고 있는 fish 에는,
math
라고 하는 커멘드가 준비되어 있습니다.math
를 사용하면, expr
보다 고도의 계산을 할 수 있습니다.내가하고 싶은 것은 고급 계산이 아닌 단순한 사칙 연산의 낮은 계산 때문입니다.
그 경우, 주로 속도면에서
math
를 채용하는 이점을 기사 단위로 찾아낼 수 없었기 때문에 expr
그대로 둡니다.이 길도 좀처럼 시간을 썼다.
Reference
이 문제에 관하여(프롬프트에 활동 한계 시간 표시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/khsk/items/87e5b5cbb0cb2f5ed230텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)