- Switch to normal mode by pressing
ESC
key - Press
gg
and it will take you to first line of the file. - Then type
dG
and it will clear all the lines from start to the end of the file.
This helped me a lot whenever I'm in a remote server trying to find a keyword or specific text amongst a bunch of files.
This command will save you a lot of time:
grep -rwn [path] -e 'pattern'
r
stands for recursionn
displays the line numberw
matches the whole word
Refer to man find
pages for more info.
Wanted to view the size of a file in terminal but don't understand the number of bytes displayed? No worries, just type this command and it'll display the size of the in human-readable format:
du -sh filename.ext
This comes in handy especially whenever you want to download multiples files from a server or take backups.
zip [option] output_file input1 input2
For example: if you want to zip an entire directory with it's file contents, just do this:
zip -r myfiles.zip folder/
I get it, a lot of people are confused on how to start typing on VIM. All you have to do is press the A
key, the editor will be switched to insert mode.
Press ESC
key to switch back to normal mode.
RAM space
Type the following command to view available memory in your system:
free -h
Disk space
Type the following command to view available disk space in your system:
df -h
If you're hosting a laravel project via cPanel, chances are that it could be a shared hosting server and that means you can't really use php artisan storage:link
for this.
But don't worry, there's another way to this. Just follow the steps below:
1. Create a symlink
In your public_html/public
directory, remove the storage
folder. Next, create a symlink.php
file in your public_html
directory and add the following code:
<?php
$targetFolder = $_SERVER['DOCUMENT_ROOT'].'/storage/app/public';
$linkedFolder = $_SERVER['DOCUMENT_ROOT'].'/public/storage';
symlink($targetFolder, $linkedFolder);
echo "done";
?>
2. Create a custom route to access storage
Alright, this is kind of a hack but it works extremely fine. Just add the following route in your routes/web.php
file:
<?php
Route::get('/storage/anyfolder/{filename}', function($filename){
// Your folder path
$folder_path = storage_path('app/public/anyfolder/'.$filename);
// check if the file exists
if(!File::exists($folder_path)) {
abort(404);
}
$file = File::get($folder_path);
$type = File::mimeType($folder_path);
$response = Response::make($file, 200);
$response->header("Content-Type", $type);
return $response;
})
?>
Now, you can access your images or any other assets easily using:
<?php
asset('storage/anyfolder/'.$filename)
?>
Hope this helps you out!
Before you integrate Excel into your application, make sure your project meets the following requirements:
- PHP v7.0 or greater
- Laravel v5.5 or greater
- PhpSpreadsheet v1.6 or greater
Download the package
Download the maatwebsite/excel
package using Composer:
composer require maatwebsite/excel
Add it to service provider
By default, this will be done automatically when you're installing the package but if you want to do it yourself, add this in your config/app.php
file:
<?php
// ...
'providers' => [
// ...
Maatwebsite\Excel\ExcelServiceProvider::class,
],
// ...
'aliases' => [
// ...
'Excel' => 'Maatwebsite\Excel\Facades\Excel::class',
],
?>;
Publish your configuration
Last but not the least, run the vendor:publish
command using artisan
to publish your configuration:
php artisan vendor:publish -provider="Maatwebsite\Excel\ExcelServiceProvider"
Upon publishing, the config/excel.php
configuration file will be created where you can make your changes.
Hope this helps you out!