|
Loading...
|
ubuntu-users@lists.ubuntu.com
[Prev] Thread [Next] | [Prev] Date [Next]
Re: Using history command in bash script Johnny Rosenberg Sat Feb 25 18:00:26 2012
2012/2/25 Bert Swart <[EMAIL PROTECTED]>: > On Fri, Feb 24, 2012 at 07:20:20PM +0100, Johnny Rosenberg wrote: >> 2012/2/24 Bert Swart <[EMAIL PROTECTED]>: >> > On Fri, Feb 24, 2012 at 01:59:39PM +0100, Johnny Rosenberg wrote: >> >> Den 24 februari 2012 13:12 skrev Johnny Rosenberg <[EMAIL PROTECTED]>: >> >> > Seems not to be possible. >> >> > >> >> > ~$ cat > pa >> >> > #!/bin/bash >> >> > >> >> > history >> >> > history >> >> > history >> >> > <Ctrl+d> >> >> > ~$ chmod +x pa >> >> > ~$ pa >> >> > ~$ >> >> > >> >> > So there seem to be no history entries available when I run history >> >> > from a bash script. Why is this? >> >> > >> >> > I also tried to use the ~/.bash_history file, but it doesn't seem like >> >> > events are added to it for each command executed, since at least a >> >> > couple of ten commands are missing at the end. Seems like things are >> >> > added to the .bash_history file ”now and then”, I'm not sure how >> >> > often. How can I get around this? Where are the latest history lines >> >> > recorded before they are added to the actual .bash_history file? >> >> > >> >> > I'm trying to make a bash script that creates an alias for my last >> >> > command and save it in my .bash-aliases file (which is launched from >> >> > the .bashrc file), so I need some way to know what my latest command >> >> > was. >> >> > >> >> > >> >> > Kind regards >> >> > >> >> > Johnny Rosenberg >> >> > ジョニー・ローゼンバーグ >> >> >> >> About that .bash_history file: >> >> At the moment, my history is 620 entries. If I look in the >> >> .bash_history file, the last command there match entry 527 of the >> >> history command's output. Where are the 93 missing entries? Can I >> >> force bash to write those to the .bash_history file? >> > Yes, set history -a in your .bashrc >> >> Failed. > Sorry, my mistake. Try adding to .bashrc: > shopt -s histappend > PROMPT_COMMAND='history -a' > > First command appends history instead of overwriting, second should write > history after each command. Untested, I don't use it Thanks, I'll try that tomorrow. >> All that did was to add >> entries to the .bash_history file when the >> history -a command was run. After that, no more entries are added, at >> least not for every time they are executed. >> >> I also tried to run history -a from my shell script, but history seems >> to be blocked in a bash script. > Correct, history can only be run from interactive shells. On non-interactive > shell, such as your script, history doesn't return anything. I wonder why. Can't see an obvious reason for that. Kind regards Johnny Rosenberg ジョニー・ローゼンバーグ -- ubuntu-users mailing list [EMAIL PROTECTED] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-users
- Using history command in bash script Johnny Rosenberg 2012/02/24
- Re: Using history command in bash script Alan Pope 2012/02/24
- Re: Using history command in bash script Johnny Rosenberg 2012/02/24
- Re: Using history command in bash script Johnny Rosenberg 2012/02/24
- Re: Using history command in bash script Bert Swart 2012/02/24
- Re: Using history command in bash script Johnny Rosenberg 2012/02/24
- Re: Using history command in bash script Bert Swart 2012/02/25
- Re: Using history command in bash script Johnny Rosenberg 2012/02/25 <=