]]>mykeepass for command linehttp://www.tkk7.com/stone2083/archive/2014/11/06/419598.htmlstone2083stone2083Thu, 06 Nov 2014 06:45:00 GMThttp://www.tkk7.com/stone2083/archive/2014/11/06/419598.htmlhttp://www.tkk7.com/stone2083/comments/419598.htmlhttp://www.tkk7.com/stone2083/archive/2014/11/06/419598.html#Feedback2http://www.tkk7.com/stone2083/comments/commentRss/419598.htmlhttp://www.tkk7.com/stone2083/services/trackbacks/419598.html 濡備綍浣跨敤
Command line for Keep Password. Usage: keepass.sh -l keepass.sh -e plain-text keepass.sh -d encoded-text keepass.sh -s encoded-text name
function enc() { #$1: plain text echo "$1" | openssl enc -des | base64 }
function dec() { #$1: encoded text echo "$1" | base64 -D | openssl enc -des -d }
function sync() { for ((loop=0;loop<${#passwords[*]};loop++)) do if [ -z "${passwords[$loop]}" ];then continue fi value="$value\n${passwords[$loop]}" done echo $value > $DATA }
function save() { #$1 encoded password #$2 name for ((loop=0; loop<${#passwords[*]}; loop++)) do info=${passwords[$loop]} password=$(echo $info | awk '{print $1}') name=$(echo $info | awk '{print $2}') if [ "$2" == "$name" ];then passwords[$loop]="$1 $2" return fi done passwords[$loop]="$1 $2"
sync }
function delete() { #$1: name for ((loop=0; loop<${#passwords[*]}; loop++)) do info=${passwords[$loop]} password=$(echo $info | awk '{print $1}') name=$(echo $info | awk '{print $2}') if [ "$1" == "$name" ];then passwords[$loop]="" fi done
sync }
function list() { for ((loop=0;loop<${#passwords[*]};loop++)) do echo ${passwords[$loop]} done }
function help() { echo "Command line for Keep Password. Usage: keepass.sh -l keepass.sh -e plain-text keepass.sh -d encoded-text keepass.sh -s encoded-text name" }
function init() { loop=0 while read line do if [ -z "$line" ];then continue fi passwords[$loop]=$line loop=$(echo $loop+1 | bc) done < $DATA }
init case "$1"in -l) list ;; -e) enc "$2" | tr -d '\n' | pbcopy ;; -d) dec "$2" | tr -d '\n' | pbcopy ;; -s) save "$2""$3" ;; -r) delete "$2" ;; *) help ;; esac
"CP Server Thread-10" tid=4564467712
at self.__bootstrap_inner()(threading.py:525)
at self.run()(threading.py:552)
at conn = self.server.requests.get()(__init__.py:1367)
at self.not_empty.wait()(Queue.py:168)
at waiter.acquire()(threading.py:244)
"CP Server Thread-9" tid=4560261120
at self.__bootstrap_inner()(threading.py:525)
at self.run()(threading.py:552)
at conn = self.server.requests.get()(__init__.py:1367)
at self.not_empty.wait()(Queue.py:168)
at waiter.acquire()(threading.py:244)
"CP Server Thread-1" tid=4526608384
at self.__bootstrap_inner()(threading.py:525)
at self.run()(threading.py:552)
at conn = self.server.requests.get()(__init__.py:1367)
at self.not_empty.wait()(Queue.py:168)
at waiter.acquire()(threading.py:244)
"CP Server Thread-7" tid=4551847936
at self.__bootstrap_inner()(threading.py:525)
at self.run()(threading.py:552)
at conn = self.server.requests.get()(__init__.py:1367)
at self.not_empty.wait()(Queue.py:168)
at waiter.acquire()(threading.py:244)
"CP Server Thread-4" tid=4539228160
at self.__bootstrap_inner()(threading.py:525)
at self.run()(threading.py:552)
at conn = self.server.requests.get()(__init__.py:1367)
at self.not_empty.wait()(Queue.py:168)
at waiter.acquire()(threading.py:244)
"CP Server Thread-2" tid=4530814976
at self.__bootstrap_inner()(threading.py:525)
at self.run()(threading.py:552)
at conn = self.server.requests.get()(__init__.py:1367)
at self.not_empty.wait()(Queue.py:168)
at waiter.acquire()(threading.py:244)
"MainThread" tid=140735286018432
at app.run()(raspctl.py:173)
at return wsgi.runwsgi(self.wsgifunc(*middleware))(application.py:313)
at return httpserver.runsimple(func, validip(listget(sys.argv, 1, '')))(wsgi.py:54)
at server.start()(httpserver.py:157)
at self.tick()(__init__.py:1765)
at s, addr = self.socket.accept()(__init__.py:1800)
at sock, addr = self._sock.accept()(socket.py:202)
at pystack()(pdbx.py:181)
at for filename, lineno, _, line in traceback.extract_stack(stack):(pdbx.py:169)
"CP Server Thread-5" tid=4543434752
at self.__bootstrap_inner()(threading.py:525)
at self.run()(threading.py:552)
at conn = self.server.requests.get()(__init__.py:1367)
at self.not_empty.wait()(Queue.py:168)
at waiter.acquire()(threading.py:244)
"CP Server Thread-8" tid=4556054528
at self.__bootstrap_inner()(threading.py:525)
at self.run()(threading.py:552)
at conn = self.server.requests.get()(__init__.py:1367)
at self.not_empty.wait()(Queue.py:168)
at waiter.acquire()(threading.py:244)
"CP Server Thread-3" tid=4535021568
at self.__bootstrap_inner()(threading.py:525)
at self.run()(threading.py:552)
at conn = self.server.requests.get()(__init__.py:1367)
at self.not_empty.wait()(Queue.py:168)
at waiter.acquire()(threading.py:244)
"CP Server Thread-6" tid=4547641344
at self.__bootstrap_inner()(threading.py:525)
at self.run()(threading.py:552)
at conn = self.server.requests.get()(__init__.py:1367)
at self.not_empty.wait()(Queue.py:168)
at waiter.acquire()(threading.py:244)
鏍稿績浠g爜:
# pystack def pystack(): for tid, stack in sys._current_frames().items():
info = []
t = _get_thread(tid)
info.append('"%s" tid=%d' % (t.name, tid)) for filename, lineno, _, line in traceback.extract_stack(stack):
info.append(' at %s(%s:%d)' % (line, filename[filename.rfind('/') + 1:], lineno)) print'\r\n'.join(info) print''
def _get_thread(tid): for t in threading.enumerate(): if t.ident == tid: return t return None