vim-forgot-sudo-to-save
vim and forgot to sudo and now?
vim
forgot to sudo
Forgot to sudo vim
before opening the file and now cannot save the file within vim.
Here is the solution:
:w !sudo tee %
vim and forgot to sudo and now?
vim
forgot to sudo
Forgot to sudo vim
before opening the file and now cannot save the file within vim.
Here is the solution:
:w !sudo tee %
vimrc file options
vimrc
file options
Remember, if you are using a colorscheme
, you need to download that scheme. Example, check the link for the
happy_hacking
If you use this .vimrc
suggestion file, it enables vim
visual
mode, so mouse
support is enable on vim.
Basic commands in visual mode
are :
shift+y
to copy
shift+p
to paste
Below, suggestion for file .vimrc
...
""" read first from this file
""" from " Website: https://github.com/yorickpeterse/happy_hacking.vim
"colorscheme happy_hacking
colorscheme yozakura
""" then apply personalisations
filetype off
"highlight clear
filetype plugin indent on " Filetype auto-detection
syntax on " Syntax highlighting
"set background=dark
""" set UTF-8 encoding
set encoding=utf-8
set fenc=utf-8
set termencoding=utf-8
""" disable vi compatibility (emulation of old bugs)
set nocompatible
""" use indentation of previous line
set autoindent
""" use intelligent indentation for C
"set smartindent
""" configure tabwidth and insert spaces instead of tabs
set tabstop=4 " tab width is 4 spaces
set shiftwidth=4 " indent also with 4 spaces
set expandtab " expand tabs to spaces
""" wrap lines at 120 chars. 80 is somewaht antiquated with nowadays displays.
set textwidth=120
""" turn syntax highlighting on
set t_Co=256
"syntax on
""" colorscheme wombat256
""" turn line numbers on
set number
""" highlight matching braces
set showmatch
""" intelligent comments
set softtabstop=4
set showcmd
set showmatch
set incsearch
set hlsearch
set hidden
"if has('termguicolors')
" set termguicolors
"endif
set mouse=a
""" https://gist.github.com/benjiao/08432d1377e768c2c4e9
" Use case insesitive search
set ignorecase
set smartcase
" Display cursor position
set ruler
" Prompt to save file on exit
set confirm
" Disable beep
set visualbell
" Highlight cursor line
set cursorline
AWS VPC flowlogs CloudWatch logs CloudTrail logs and filters examples
Official Documentations - https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html
[version, account, eni, source, destination, srcport, destport="8000", protocol, packets, bytes, windowstart, windowend, action, flowlogstatus]
[version, account, eni, source="185.2*", destination, (srcport!="80" && srcport!="443"), (destport!="80" && destport!="443"), protocol, packets, bytes, windowstart, windowend, action, flowlogstatus]
=
-- EQUAL
!=
-- NOT EQUAL
<
-- SMALL THAN
>
-- GRATER THEN
<=
-- SMALL OR EQUAL
>=
-- GRATER OR EQUAL
&&
-- AND
||
-- OR
{ $.eventSource = "signin.amazonaws.com" && $.responseElements.ConsoleLogin = "Failure" }
{ ($.sourceIPAddress != "52.123.123.5") && ($.sourceIPAddress != "33.123.123.*") && ($.sourceIPAddress != "*.amazonaws.com") }
{ $.eventSource="signin.amazonaws.com" && $.additionalEventData.MFAUsed="No" }
Happy learning
Linux command lsusb
lsusb | grep -i cam
Bus 001 Device 004: ID 046d:0825 Logitech, Inc. Webcam C270
-v
option for verbose and filter for "Width|Height"
and grep
command.$ lsusb -s 001:002 -v | egrep "Width|Height"
wWidth 640
wHeight 480
wWidth 1280
wHeight 1024
...
I also like to use command likes sort
, awk
, grep
and uniq
.
echo "Maximum --> Width <-- will come on top" && lsusb -s 001:004 -v | grep "Width" | awk '{print $2 " " $1}' | sort | uniq | sort -nr
echo "Maximum --> Height <-- will come on top" && lsusb -s 001:004 -v | grep "Height" | awk '{print $2 " " $1}' | sort | uniq | sort -nr
v4l2-ctl --list-formats-ext
https://askubuntu.com/questions/214977/how-can-i-find-out-the-supported-webcam-resolutions
Raspberry Pi increase the swap memory size
Change the size for your preference, Default is 100
, (100MB)
Change for example for 2048
(2GB)
sudo vim /etc/dphys-swapfile
sudo /etc/init.d/dphys-swapfile restart
Default swap file location is ls -lh /var/swap
-rw------- 1 root root 2.0G Feb 29 20:20 /var/swap
htop
to see memory, cpu and swap usage.If you do not have htop
installed, you can install it with apt-get install htop
Python 3 learning for the first time
I have a background in shell scripting
, so when I had to automate something, bash scripting
would do the job just fine!
I also want to learn Python because is widely use nowadays and easy to integrate in most AWS Services, specifically useful for events with Lambda in AWS within serverless architectures.
Took me a while to do something useful with Python 3. At first, seemed an easy language to learn, and I still think it is!
If you already started first steeps, you know you can easily do print a print ("Hello World")
, and you probably learnt a difference on the print
command. From Python 2 to Python 3, you now have to use the parentheses ( ... )
...
Just the command print
is not enough to make something useful.
I thought that there might be someone else out there struggling to get started in Python 3, so I decided to share my experience on "How I start learning Python 3 and doing something useful".
You can execute command directly from running the command python3
CommandLine $ > python3
Python 3.7.4 (default, Jul 9 2019, 18:13:23)
[Clang 10.0.1 (clang-1001.0.46.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> print ("Hello World for AntonioCloud.com")
Hello World for AntonioCloud.com
>>>
>>> exit()
CommandLine $ >
CommandLine $ >
Then, I installed ipython
and practice from there, but I was still on the basics commands and wanted to learn more.
After trying the basics, I set myself to practice on commute or free time.
Started by downloading the mobile app SoloLearn and started to practices while I was on commute. Some time later I completed the course, and Hey! Actually the final certificate feels like a good and well deserved rewards for completing the corse.
Here is mine [Antonio SoloLearn Python Certificate].
So, after that, it really boosted my Python 3 skill when i started the fun project Stranger Things Alphabet Wall Lights.
With a fun challenge and with some physical visual result I felt is a lot more engaging.
commandI set fun challenge, something simple that only requires for loops
, while loops
and
Feel free to leave a feedback and share your experience.
(...)
Stranger Things Alphabet Wall Lights with Raspberry Pi Python 3 and Neopixels
It all started with the launch of Stranger Things Season 3.
We, Kat Decided to invite a couple of friend for the first episode of ST Session 3 and why not create some scary wall that spells out some words?!
Why not, right?
What I used:
(...)
Lists all ec2 instances in all regions including account owner, instance id, instance type, statues and region.
for region in `aws ec2 describe-regions --output text | cut -f4`; do
echo -e "\nInstances in: '$region':";
aws ec2 describe-instances --query 'Reservations[*].Instances[*].[NetworkInterfaces[0].OwnerId, Placement.AvailabilityZone, VpcId, InstanceId, InstanceType, State.Name]' --output text --region ${region};
done;
AWS cli IAM roles and tokens
aws sts assume-role --role-arn arn:aws:iam::ACCOUNT-NUMBER:role/ROLE-NAME --role-session-name "RoleSession1" | \
sed 's/[," :]//g;s/AccessKeyId/export AWS_ACCESS_KEY_ID=/;s/SessionToken/export AWS_SECURITY_TOKEN=/;s/SecretAccessKey/export AWS_SECRET_ACCESS_KEY=/' | \
grep 'export' | \
tee credentials.properties
export AWS_ACCESS_KEY_ID=xxxxxxxxxxx
export AWS_SECURITY_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
export AWS_SECRET_ACCESS_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
AWS Database Migration Service - https://aws.amazon.com/dms
DMS tool
(...)